<HTML>
<HEAD>
  <!-- Created with AOLpress/2.0 -->
  <!-- AP: Created on: 16-Sep-2001 -->
  <!-- AP: Last modified: 22-Aug-2006 -->
  <TITLE>Changes to pfaedit (predecessor to fontforge)</TITLE>
  <LINK REL="icon" href="fftype16.png">
  <LINK REL="stylesheet" TYPE="text/css" HREF="FontForge.css">
</HEAD>
<BODY>
<DIV id="in">
  <A HREF="changelog.html">Current fontforge changes</A><BR>
  <A HREF="oldchangelog.html">Older fontforge changes</A>
  <P>
  <UL>
    <LI>
      1-Mar-2004
      <UL>
	<LI>
	  The Check directions option of Find Problems caused multilayer mode to crash.
	<LI>
	  Expand stroke would produce counter-clockwise paths when given an open contour
	  and asked to fill it with a circular (or elliptical) pen
	<LI>
	  Try to do a better job of guessing the correct direction of a path in an
	  eps file (or a type3 or svg font)
	<LI>
	  FontForge would crash when editing in the grid layer
	<LI>
	  When the control key is down, make the scroll wheel do a magnify/minify.
	<LI>
	  Various cosmetic changes to find problems
	  <OL>
	    <LI>
	      Specify that "nearness" is measured in em-units
	    <LI>
	      change "refs deeper than" to "refs nested deeper than"
	    <LI>
	      make check dir be on by default
	  </OL>
	<LI>
	  Put in more comments about fontforge. We now have a domain under
	  <A HREF="http://fontforge.sf.net/">fontforge</A>, future releases will be
	  found there.
      </UL>
    <LI>
      29-Feb-2004
      <UL>
	<LI>
	  FontForge could crash if given a bad 'cmap' subtable
	<LI>
	  Clean up generation of OS/2 a bit
	<LI>
	  Pass motion events to windows even when a dlg is active (so that the mouse
	  location will be shown in an outline window when the Point info dlg is active).
	<LI>
	  Put in a comment about changing to FontForge in the copyright notice the
	  program prints at start up.
	<LI>
	  The "preflight" script on the mac had problems if the program had never been
	  installed before
      </UL>
    <LI>
      27-Feb-2004
      <UL>
	<LI>
	  Redid the way menus respond to arrow keys
	<LI>
	  a multilayer enabled FontForge would crash when editing a normal font.
      </UL>
    <LI>
      24-Feb-2004
      <UL>
	<LI>
	  Remove the AddHint command and replace it with AddHHint and AddVHint.
	<LI>
	  FontForge would crash when generating a mac family with NFNT bitmaps.
	<LI>
	  Added support of exporting a character into PDF format.
	<LI>
	  Oh dear, I was figuring out hintmasks in the wrong direction (because PS
	  splines get reversed before output, so I now reverse them during the hintmask
	  calculation too).
	<LI>
	  At Werner's suggestion, added code to show what hints are currently active
	  at a point.
	<LI>
	  At Werner's suggestion added code to show what points are affected by a hintmask
	<LI>
	  Added support for real editing of type3 (and svg) fonts. Support for editing
	  stroked paths, different fill colors, multiple stroke/fill operations, etc.
	  Because this involves a lot of extra overhead it is wrong for people who
	  want to edit CJK fonts, so this mode is off by default. It may be turned
	  on by
	  <BLOCKQUOTE>
	    <PRE>$ configure --with-multilayer
</PRE>
	  </BLOCKQUOTE>
	<LI>
	  FontForge failed to interpret h/vstem3 commands properly when building a
	  hintmask (when reading a type1 font with hint substitution)
      </UL>
    <LI>
      11-Feb-2004
      <UL>
	<LI>
	  FontForge would crash when saving a non-multi master font.
	<LI>
	  Adding new scripting commands ClearCharCounterMasks, SetCharCounterMask
      </UL>
    <LI>
      10-Feb-2004
      <UL>
	<LI>
	  FontForge could produce bad tfm files.
	<LI>
	  Added CheckForAnchorClass scripting command
	<LI>
	  Added SetFontHasVerticalMetrics scripting command.
	<LI>
	  FontForge would crash if asked to generate a contextual lookup which refered
	  to a lookup which only was activated by a character(s) which was not worth
	  outputting.
	<LI>
	  FontForge did the wrong thing when evaluating the PostScript "index" command
	  (it returned the wrong value from the stack (stack index off by one))
	<LI>
	  Added support for the PostScript "for" loop.
	<LI>
	  I have created a simple (1 axis) Multiple Master Type1 font with FontForge.
	  It works with both ghostview and freetype.
	<LI>
	  FontForge would crash when generating a ttf file from an sfd file which contain
	  an invalid script/lang index. Put in code to warn user about this, and in
	  some cases to correct it.
	<LI>
	  FontForge had problems reading sfd files in the old point count format, this
	  meant we still got bad point count errors.
	<LI>
	  FontForge wrote bad sfd files if there were countermasks (all the contours
	  of the glyph would be lost)
	<LI>
	  I finally figured out why FontForge kept crashing when palettes were docked
	  and an outline view was closed.
	<LI>
	  Fixed various crashes in Interpolate fonts
	<LI>
	  FontForge had problems with using subroutines to express references in PostScript
	  (introduced 30-Jan)
	<LI>
	  Added a new scripting commands AddHint and ReplaceCharCounterMasks.
      </UL>
    <LI>
      4-Feb-2004
      <UL>
	<LI>
	  Make it illegal to select both "Condense" and "Extend" in the mac style.
      </UL>
    <LI>
      3-Feb-2004
      <UL>
	<LI>
	  Point Info dlg crashed on the mac
	<LI>
	  Add UI control over Mac Style through the Font Info dlg
	<LI>
	  more prep work for mm fonts
      </UL>
    <LI>
      2-Feb-2004
      <UL>
	<LI>
	  Generating a postscript font from a database with quadratic splines didn't
	  work
	<LI>
	  FontForge crashed on a font with two /CharStrings entries
	<LI>
	  Small tweak to menubar behavior given left/right arrow (for Werner)
	<LI>
	  Composite glyphs created with seac (type1) had the wrong transformation for
	  the accent.
	<LI>
	  more prep work for mm fonts
	<LI>
	  Still have problems with ttf point counts
	<LI>
	  If a user loaded a ttf file and made it monospace and then generated it as
	  ttf, all glyphs except the .notdef had an advance width of 0
      </UL>
    <LI>
      1-Feb-2004
      <UL>
	<LI>
	  sfd reader had a bug. Went into an infinite loop if a hintmask contained
	  any of the characters [a-fA-F].
      </UL>
    <LI>
      31-Jan-2004
      <UL>
	<LI>
	  In Type2 output, when putting a glyph into a subroutine, if that glyph had
	  no conflicts but had a hintmask fontforge produced a bad font (which crashed
	  FontForge when it tried to read it in).
	<LI>
	  configure script still wasn't working on solaris (or mac with libiconv probably)
      </UL>
    <LI>
      30-Jan-2004
      <UL>
	<LI>
	  The kerning state machine addition broke the indic state machine dialog
	<LI>
	  The mac docs claim that the 'feat' table should be sorted by feature id.
	  But if you do this WorldText can't find features. All Apple fonts seem to
	  be sorted by the order the features are used in the 'morx' table's chains.
	  WorldText works if you do this.
	<LI>
	  Yannis proposed several extensions to the State Machine editor, most notably
	  the ability to move the edit dialog with Up/Down/Left/Right buttons.
	<LI>
	  I had the feature settings for Linguistic Rearrangement and Vertical Subs.
	  reversed.
	<LI>
	  In some cases I wasn't outputting anything to turn a feature off.
	<LI>
	  Fixed many problems with kerning state machine dlg
	<LI>
	  Fixed several problems with insertion state machines
	<LI>
	  Fixed several problems with reading in state machines.
	<LI>
	  Added SetMacStyle() to give the user control over how mac families are built.
	<LI>
	  Added a fflush after doing Print()s in scripting
	<LI>
	  FontForge would crash when given an extremely long real number in a cff
	  dictionary (in this case the font itself was in error)
	<LI>
	  FontForge did not copy a bitmap character's width when it copied the bitmap.
	<LI>
	  Char Info didn't handle pairwise positioning properly.
	<LI>
	  Some more pangrams from
	  <A HREF="http://shair.net/misc/txt/pangram.en">http://shair.net/misc/txt/pangram.en</A>
	  (link provided by David Shaal)
	<LI>
	  My old approach to hint substitution caused problems with multiple master
	  fonts. So now I keep track of which points are substitution points and what
	  the hint masks are at those points. There is a new command which will
	  automatically figure out these points, and the user may control them directly
	  through Point Info (Element-&gt;Get Info). At the same time I figured I might
	  as well do the same thing for counter masks, so FontForge will read counter
	  masks in from otf file (I did not implement this for type1s), there is a
	  new command to try and make a guess as to what they should be, and the user
	  may control them directly through Element-&gt;Char Info. (new scripting commands,
	  SubstitutionPoints() and AutoCounter() do the obvious).
	<LI>
	  Added a Hints-&gt;Don't AutoHint command to mark a character as having hints
	  the user likes which should not be modified until the user explicitly calls
	  AutoHint(). (and a matching scripting command).
	<LI>
	  Added ability to control whether a PostScript font (type1&amp;type2) is output
	  with rounding.
	<LI>
	  FontForge could generate a bad 'post' table for bitmap only fonts.
	<LI>
	  FontForge didn't allow you to create two pairwise positioning items with
	  the same tag.
	<LI>
	  Hungarian names for mac features and for some standard names like "Bold",
	  etc. provided by Laszlo Karoly.
	<LI>
	  Pierre HANSER noticed that if FontForge mapped a single glyph to two encodings
	  then bitmap generation through freetype got confused.
	<LI>
	  If a font contained a non-.notdef character at encoding 0, then generating
	  an opentype font from it had a fair chance of crashing.
	<LI>
	  Added a couple of new select menu items: Select-&gt;Contours, Select-&gt;First
	  Point, Next Contour
	<LI>
	  Added a new sub-menu to allow ordering contours within a glyph. This is almost
	  totally useless (the final look of the character should not be affected by
	  the order in which the contours are drawn), but for multiple master fonts,
	  the contour list must have the same ordering in corresponding glyphs.
      </UL>
    <LI>
      11-Jan-2004
      <UL>
	<LI>
	  A patch for reading broken mac tables got lost. I've reinstated it.
      </UL>
    <LI>
      10-Jan-2004
      <UL>
	<LI>
	  FontForge would crash when asked to use the truetype debugger on fpgm
	<LI>
	  FontForge always coloured the background of debugger windows grey.
	<LI>
	  The Points window did not show any points.
	<LI>
	  Changed the Points window and the character view to show whether a point
	  has a watch point set on it.
	<LI>
	  Display the code range ('fpgm'/'prep'/Glyph) in the character's info line
	  when debugging.
	<LI>
	  When creating a 'fpgm'/'prep' table we created one with some garbage instructions
	  in it.
	<LI>
	  Somehow I neglected to put in a dlg for editing the 'cvt ' table. This has
	  been rectified.
	<LI>
	  There was a bug in the postscript interpreter (the thing used for reading
	  .eps files and type3 fonts) and transforming a point by a matrix with diagonal
	  entries (rotation, skew, etc.) gave the wrong value.
	<LI>
	  Added code to preserve more of the PS graphic state when eps file does a
	  gsave
	<LI>
	  Merge Fonts would crash when merging a font with references into an empty
	  font
	<LI>
	  I wasn't providing default values for width/weight classes in the OS/2 table
	<LI>
	  The bitmap dlg could write one byte beyond the area allocated in some cases.
	<LI>
	  Changed the outline character popup menu to include an Add Anchor Point entry
	<LI>
	  The Ligature index wasn't correctly enabled in some cases.
	<LI>
	  Add little arrows near the first point of each contour (in the outline character
	  view) showing the direction of the contour.
	<LI>
	  The mac's interpretation of the CFF spec is very picky, but correct. If a
	  font contained no references then FontForge would generate an empty subroutine
	  index. This is wrong. There should be no subroutine index, rather than an
	  empty one. (Strangely, global subroutines have the reverse requirement. Stupid).
	  Now if there are no references, then FontForge will not generate a local
	  subroutine index.
	<LI>
	  Yannis Haralambous has corrected the French UI.
	<LI>
	  Three new scripting commands: AddAnchorClass, AddAnchorPoint, RemoveAnchorClass
	<LI>
	  Show ATT did not show glyph classes properly.
	<LI>
	  Made scripting dlg be resizable.
	<LI>
	  Save As &amp; Import dlgs looked bad in French. Various other improvements
	  to make things look better on non-english systems.
	<LI>
	  Added the ability to set the glyph class from Char Info.
	<LI>
	  FontsInFile did not work on pfb files (nor on cff)
	<LI>
	  Opening a mac resource file with multiple FONDs from a script would crash.
	<LI>
	  In Font Info-&gt;TTF Names the languages now appear in unicode ordering no
	  matter what the locale (used to be the langs were in alphabetical ordering
	  for English, even if they were actually French)
      </UL>
    <LI>
      2-Jan-2004
      <UL>
	<LI>
	  More accurate round joints in stroking.
	<LI>
	  Better approximations to splines which turn through 180 degrees or more
	<LI>
	  Support for reading cff files.
	<LI>
	  Yet more problems counting ttf points
	<LI>
	  Update copyright notices.
	<LI>
	  Add code to protect FontForge against reading bad Apple lookup tables (I
	  think the Zapfino.dfont that ships with 10.3 has two bad lookups, but perhaps
	  I just don't understand them).
	<LI>
	  Try harder to avoid using 'DFLT' script when coming up with a default script
	  for glyphs with no innate script.
	<LI>
	  Add a Find Problems to detect 'DFLT'
	<LI>
	  I've been generating bad Simple Positioning subtables for GPOS all along.
	<LI>
	  Be pickier about what glyph names I let the user choose.
	<LI>
	  On cygwin (perhaps elsewhere, but I was never able to find the bug elsewhere)
	  if you invoked one command from the menu while another was still executing,
	  then fontforge would probably crash.
	<LI>
	  Support for reading and writing bare cff files.
	<LI>
	  Build Accents crashed when asked to build accented chars for iacute, etc.
	  in a font without dotlessi.
      </UL>
    <LI>
      28-Dec-2003
      <UL>
	<LI>
	  RemoveATT scripting command didn't work if the third argument were "*"
	<LI>
	  FontForge's clipping in the character view left something to be desired.
	<LI>
	  Make Meta-Arrow move selected points by 10 times what Arrow would move them
	  by.
	<LI>
	  Grabbed the feature ordering for GPOS/GSUB specified on the
	  <A HREF="http://www.microsoft.com/typography/specs/default.htm">microsoft
	  site</A> and taught it to FontForge.
	<LI>
	  Change the Point Info dlg
	  <UL>
	    <LI>
	      to allow the user to control the point type from there.
	    <LI>
	      to enforce constraints on control points (ie. the control points of a curve
	      point must be in line with the point itself)
	    <LI>
	      by adding an alternated mode of entering data, by distance and angle (rather
	      than just offset)
	  </UL>
	<LI>
	  Some MF fonts have glyph names with characters which aren't allowed in PostScript
	  names
	<LI>
	  FontForge failed to set widthset when it read in glyphs from a windows FNT
	  (FON) file. This meant that some glyphs might be ignored.
	<LI>
	  The context chaining dialog had a bad test for valid glyph names and complained
	  about any name containing digits
	<LI>
	  The histogram dlg would crash if the mouse moved across it when the window
	  was so wide that it could contain more stem widths than were actually in
	  use.
	<LI>
	  Added three commands to the metrics view view menu to allow users to insert
	  glyphs by name or encoding.
	<LI>
	  Yannis points out that afm files produced on fonts with vertical metrics
	  did not contain "WY" values (vertical advance width), also that the vkerns
	  in the file actually contained the values of horizontal kerns.
	<LI>
	  The 'kern' table did not contain pairwise vertical kerns (it did contain
	  vertical kerning by class).
	<LI>
	  The View-&gt;Substitutions sub menu of the metricsview was not being cleared
	  properly if the current glyph had no substitutions.
	<LI>
	  Yannis wants the View-&gt;Substitutions menu to have a way to return to the
	  original glyph.
	<LI>
	  Yannis points out that the metricsview in vertical mode changed the top side
	  bearing in an unexpected way. Also the vertical advance width did not refresh
	  the display properly.
	<LI>
	  Thanks to David Opstad, I now have an example of a format 1 kerning table
	  and have extended FontForge to support kerning by state machine.
	<LI>
	  The code for generating and loading otb (OpenType bitmap) fonts was broken.
	<LI>
	  And the code for generating my own weird bitmap only fonts for windows had
	  some flaws too (different flaws).
	<LI>
	  If I typed a character into a fontview (or char view) and the font did not
	  contain the character, fontforge would not select that slot that encoded
	  the character, even if the character was in the encoding.
	<LI>
	  When loading a ps type3 font, make sure that the glyph name is available
	  when parsing glyphs so we can produce reasonable error msgs. (mostly this
	  means "Spline stroke is too big"
	<LI>
	  Only generate Spline stroke too big errors once per font.
	<LI>
	  Adam Goode tells me that the format 12 (32bit unicode) cmap was wrong, and
	  provided a patch to fix it.
	<LI>
	  Pretty much rewrote the stroking command from scratch.
	<LI>
	  Merge fonts would crash when merging in a font containing either a ligature
	  caret or a nested lookup.
	<LI>
	  Made FontForge cognizant of the proposed unicode dotlessj character (0237),
	  it will now use either this or the dotlessj in adobe's private use area
	  (depending on which is in the font)
	<LI>
	  FontForge would crash when trying to build an accented character based on
	  inverted breve in pala.ttf
	  <UL>
	    <LI>
	      It wrongly considered pala.ttf to be slightly italic (.0005&#176;)
	    <LI>
	      It would crash when doing this in an italic font
	  </UL>
	  <P>
	    <HR>
	<LI>
	  When importing postscript (type3 fonts, eps files) counter-clockwise paths
	  which are both stroked and filled cause problems
	<LI>
	  Changed the version stamp of otb fonts from 'OTTO' to 1.0
      </UL>
    <LI>
      10-Dec-2003
      <UL>
	<LI>
	  When there were multiple features with the same tag (different scripts with
	  'kern' for instance) FontForge would produce multiple copies of the same
	  lookup instead of different lookups.
	<LI>
	  FontForge was not setting the right to left lookup flag bit properly for
	  hebrew (and presumably arabic) kerning
	<LI>
	  Remove overlap was coalescing some splines that it should not have.
	<LI>
	  Typo in expand stroke meant that some round line joins were really weird
      </UL>
    <LI>
      5-Dec-2003
      <UL>
	<LI>
	  When changing the ascent/descent with fontinfo or scaletoem some of the OS/2
	  fields did not get updated properly.
	<LI>
	  The OS/2 TypoDescent field was set positive instead of negative.
	<LI>
	  Added two scripting functions SetTTFName and GetTTFName to give scripts access
	  to the truetype names as well as the PS ones
	<LI>
	  Patch from Kazuyuki. SetPanose didn't work when argument was an array.
	<LI>
	  New French translations from Pierre
	<LI>
	  $copyright didn't return the correct thing (Patch from Giuseppe Ghibo)
	<LI>
	  Kerning pair data for non-ASCII unicode characters did not get output properly
	  into SVG fonts
	<LI>
	  The AddATT scripting command did not add ligatures correctly leading to problems
	  when time came to generate a font.
      </UL>
    <LI>
      23-Nov-2003
      <UL>
	<LI>
	  FontForge would crash if given an encoding for the locale which it didn't
	  understand
	<LI>
	  Center/Thirds in width from the font view would change the width
	<LI>
	  There was a synchronization problem and the truetype debugger window could
	  deadlock
	<LI>
	  FontForge failed to read a Contextual (but not Contextual chaining) Coverage
	  lookup properly.
      </UL>
    <LI>
      10-Nov-2003
      <UL>
	<LI>
	  FontForge was crashing when loading a bitmap font with encoded characters
	  outside the range specified by the encoding (ie. a character 0x10000 in a
	  unicode BMP font).
	<LI>
	  Fixes for several memory leaks provided by Kazuki Ohta
	<LI>
	  Slight improvements to the View-&gt;Combinations-&gt;Ligature dlg
      </UL>
    <LI>
      8-Nov-2003
      <UL>
	<LI>
	  Bug introduced 6-Nov, FontForge generated a bad 'loca' table when outputting
	  a ttf outline font with bitmaps.
	<LI>
	  FontForge was getting the truetype point number wrong when reading outlines
	  from an sfd file.
	<LI>
	  If the loca table was 2 or 4 bytes long, FontForge failed to warn about a
	  bad glyph count.
	<LI>
	  FontForge got confused if two truetype glyphs had the same name.
	<LI>
	  When dumping out embedded ttf bitmaps, FontForge got confused by the extra
	  glyphs (.null and return) and generated garbage.
	<LI>
	  Make View-&gt;Combinations-&gt;ligature dlg a bit better for non-latin glyphs
      </UL>
    <LI>
      6-Nov-2003
      <UL>
	<LI>
	  The clut used for drawing anti-alias bitmaps in the metrics view was wrong.
	<LI>
	  In a bitmap only ttf file, FontForge was usually producing bad line spacing
	  data as far as the mac was concerned.
	<LI>
	  When importing bitmaps into an empty font, we might as well change to font
	  view to show the bitmaps rather than the empty outline data.
	<LI>
	  If glyph 0 was selected in the fontview then the File-&gt;Open Outline command
	  was disabled.
	<LI>
	  With a user defined encoding we were again getting occasional crashes.
	  (introduced by my work on bitmaps)
	<LI>
	  On certain glyphs, the optimizer introduced an slight error when calculating
	  a spline's coefficients from its control point. Even though this error was
	  on the order of 7e-8 it was enough that the rasterizer produced grossly incorrect
	  results. I have pulled the relevant routine out into its own file which is
	  now compiled by itself without optimization.
      </UL>
    <LI>
      4-Nov-2003
      <UL>
	<LI>
	  When FontForge removes glyphs with Font Info-&gt;Encoding-&gt;Number of
	  characters, it will now run through the font and remove any ligatures,
	  substitutions, etc. refering to non-existent glyph names.
	<LI>
	  Some improvements to remove overlap.
	<LI>
	  Added a warning message so that when user attempts to output a ttf file where
	  no characters have unicode encodings, then the user at least gets warned
	  that the result will probably not work. For fonts with fewer than 256 glyphs
	  it will offer the choice of a symbol encoding.
	<LI>
	  If a reference were copied in the outline character view and pasted into
	  the font view, fontforge would crash.
	<LI>
	  the expand stroke patch on 29-Sept broke calligraphic and ellipse modes.
	<LI>
	  The mouse's scroll wheel did not work in the metrics view.
	<LI>
	  The metrics view resized very slowly under window managers which do continuous
	  resizing.
	<LI>
	  Give the magnifying glass's rectangle mode a threshold so that it doesn't
	  resize tiny rectangles which are really caused by mouse jitter.
	<LI>
	  Attempt to set a zoom size for character and bitmap windows, but modern window
	  managers don't seem to support the old protocol, and I can't find docs on
	  a new version.
	<LI>
	  Was not converting filenames to unicode properly for the open/generate progress
	  dlgs.
	<LI>
	  FontForge would crash when attempting to draw a character for which in had
	  no (X11) glyph when doing bidirectional text.
      </UL>
    <LI>
      29-Oct-2003
      <UL>
	<LI>
	  When removing an ATT feature from a glyph using a script, FontForge would
	  screw up memory. Leading to unpredictable results.
      </UL>
    <LI>
      28-Oct-2003
      <UL>
	<LI>
	  FontForge would crash when converting from cubic to quadratic splines in
	  a script
	<LI>
	  FontForge would leave a dangling pointer when converting from cubic to quadratic.
	  This did not affect ttf generation, but would affect most other operations.
      </UL>
    <LI>
      27-Oct-2003
      <UL>
	<LI>
	  FontForge would crash when changing the encoding of a font with a .notdef
	  character to a user defined encoding.
	<LI>
	  If one had multiple ligatures for the same glyph with the same tag and script,
	  FontForge would eat all but one of them.
	<LI>
	  When generating most kinds of font, of a font which had ligatures containing
	  glyph names that were not in the font, then FontForge would often screw up
	  memory and eventually crash.
      </UL>
    <LI>
      26-Oct-2003
      <UL>
	<LI>
	  Simplify sometimes removed points at extrema even when it should not have
	<LI>
	  If one had a ttf font (with instructions) and merged in a postscript font
	  and then generated a ttf font, FontForge would complain about an internal
	  error, but go on to produce a valid font. It should no longer complain.
	<LI>
	  When generating fonts from a script, if the font were in compacted format
	  the generated font would have a compact encoding (instead of the desired
	  encoding).
	<LI>
	  Kanou provided a patch to speed up importing bitmap fonts.
      </UL>
    <LI>
      23-Oct-2003
      <UL>
	<LI>
	  The change on the 20th to make custom encoding support 32bit unicode was
	  incomplete and made custom encodings crash instead.
	<LI>
	  The File-&gt;Display dialog ignored the left-sidebearing of a glyph causing
	  output of some fonts to look awful.
	<LI>
	  Was getting the AdobeStandardEncoding a bit wrong (after the 5-Oct change
	  to the new unicode glyph list which does not contain "fi" nor "fl")
	<LI>
	  I used to set the "widthset" bit on .notdef characters, but there's really
	  no point to that.
	<LI>
	  Maxim Iorsh tells me that U+fb4f should be a historic ligature.
	<LI>
	  On some displays right scrolling the Histogram dlg would leave black lines
	  on the window.
	<LI>
	  AutoHint removed too many stems from consideration as hints on some very
	  bold fonts
	<LI>
	  Make FontBBox of Type1 fonts be executable. Adobe says it doesn't have to
	  be, but dvips expects it to be.
      </UL>
    <LI>
      20-Oct-2003
      <UL>
	<LI>
	  Windows XP &amp; 2000 insist on having (what cygwin describes as) the execute
	  bit of the file set. So FontForge now sets execute permissions on ttf, otf
	  and pfb fonts on the cygwin platform.
	<LI>
	  If a menu was so big that it had to be positioned over the menubar (instead
	  of above or below it), and the user clicked on the menubar to invoke it,
	  then the mouse release would go to the new menu and invoke whatever item
	  happened to be under the cursor. Not good.
	<LI>
	  Oops. The Effects sub-menu should have been disabled for quadratic (truetype)
	  fonts.
	<LI>
	  Added a new configuration option --with-regular-link to disable my dlopening
	  of libraries. I dislike this. I don't think it is anywhere near as flexible
	  as the dlopen method. It makes it much harder to ship something that will
	  work with freetype (detecting whether the bytecode interpreter is present
	  must be done at link time rather than run time and that is a severe disadvantage.
	  But I have been asked for it.
	<LI>
	  Change internal format so that custom encodings can handle 32 bit unicode.
      </UL>
    <LI>
      16-Oct-2003
      <UL>
	<LI>
	  FontForge was still outputting a disordered name table.
	<LI>
	  The source tarball on the website included many files twice and some files
	  that it should not have included at all. I should now be less than half the
	  size it used to be.
      </UL>
    <LI>
      15-Oct-2003
      <UL>
	<LI>
	  FontForge did not bother to open files in binary mode. If cygwin was configured
	  with DOS linebreaks, then fontforge failed to generate valid font files on
	  cygwin. 
	    <HR>
	<LI>
	  Added some more warnings to the default build list and fixed the problems
	  they indicated.
      </UL>
    <LI>
      12-Oct-2003
      <UL>
	<LI>
	  Several bad bugs in last night's build (name table was (usually) all screwed
	  up, conversion from PS to TTF got incorrect Internal Error msgs)
	<LI>
	  Order tables in truetype output 
	    <HR>
	<LI>
	  My 5-Oct-2003 libpng fix broke it completely. Should now be refixed.
      </UL>
    <LI>
      11-Oct-2003
      <UL>
	<LI>
	  Another patch from Kanou to recognize encodings better in bdf files.
	<LI>
	  Various memory fixes found by valgrind
	<LI>
	  The Element-&gt;Find Problems-&gt;ATT-&gt;Missing glyph names fixup dlg had
	  some formatting problems and failed to skip properly.
	<LI>
	  Draw an "x" through encodings which do not map to glyphs
	<LI>
	  If the user is in a compacted encoding and asks to print a font, then revert
	  to the uncompacted encoding for the duration of the printing.
	<LI>
	  View-&gt;Show ATT would show ligatures (and substitutions) even if some of
	  the glyphs in the glyph list were missing.
	<LI>
	  Fix a number of bugs found by the MS Font Validator
	  <UL>
	    <LI>
	      I misunderstood (and the spec incorrectly documented) the behavior of the
	      maxp table
	    <LI>
	      I had a typo in figuring out the OS/2 table
	  </UL>
	<LI>
	  I had one more case where I was computing the point count of a glyph incorrectly.
	<LI>
	  Make the width line snap to zero when the user drags near it.
      </UL>
    <LI>
      6-Oct-2003
      <UL>
	<LI>
	  Give the Metrics View a vertical mode in which it does vertical kerning,
	  etc.
	<LI>
	  Add a hack to allow FontForge to parse a weird pfb file.
      </UL>
    <LI>
      6-Oct-2003
      <UL>
	<LI>
	  Fixed a number of bugs in the new kerning class dlg including:
	  <UL>
	    <LI>
	      Vertical kerning classes were displayed horizontally
	    <LI>
	      When adding a new class the new offsets were garbage
	  </UL>
	<LI>
	  The routine to convert a horizontal kerning class to the equivalent vertical
	  kerning class (of the vertical variants of the glyphs in the horizontal class)
	  didn't work.
	<LI>
	  In Back and Lookup Classes of a contextual chaining substitution by class,
	  the [New] button was never enabled. (it was disabled if []SameAs was on,
	  and then never enabled).
	<LI>
	  My new 94x94 encodings were actually 93x93. Patch by kanou.
      </UL>
    <LI>
      5-Oct-2003
      <UL>
	<LI>
	  Got rid of GreekFixup and added Interpretations of encodings to FontInfo
	<LI>
	  FontForge failed to output ligature substitutions nested under a context/chain
	  sub
	<LI>
	  If a font had more than about 5 nested ligatures, fontforge would screw up
	  its memory and (likely) crash
	<LI>
	  Fixed various problems pertaining to adding a kerning class to an empty font
	<LI>
	  Add a runtime check for the case where the user's system has a dynamic libpng
	  installed without libz
	<LI>
	  If a character had ligature carets then FontForge could crash when determining
	  its script
	<LI>
	  FontForge was reading mac 'kern' format 3 incorrectly.
	<LI>
	  Rewrote the Kerning class creation dialog. I hope it is clearer now.
      </UL>
    <LI>
      2-Oct-2003
      <UL>
	<LI>
	  got rid of my strange 94x94 encodings for JIS/KSC/GB (based on the kuten
	  array) and used instead the much more obvious encoding that everyone else
	  uses.
	<LI>
	  BDF files were output with the wrong encoding name for JISX0208 (I was outputting
	  "JISX208" instead-- missing a "0").
	<LI>
	  Autotrace failed to read potrace output properly if there were more than
	  one contour in a given glyph.
	<LI>
	  Upgraded psunicodenames to the current Adobe Glyph List for New Fonts.
	<LI>
	  Simplify now works for quadratic splines. If one uses the []Allow Slopes
	  to Change checkbox then results are not good. I need a better algorithm.
	<LI>
	  If asked to generate a type0 postscript font for a font encoded with an extended
	  1byte encoding (ie. one that had about 300 characters) FontForge would probably
	  crash.
      </UL>
    <LI>
      29-Sept-2003
      <UL>
	<LI>
	  When a path was both stroked and filled (in a postscript/eps file), fontforge
	  would ignore the stroke.
	<LI>
	  I forgot that the stroke linewidth needs to be transformed by the current
	  transformation matrix. This meant that when a path should have been stroked
	  by an ellipse (when reading a ps/eps file) fontforge would blithely stroke
	  it with a circle.
	<LI>
	  Added some support for reading the /Metrics array.
	<LI>
	  If there were a sharp corner (where the "radius of curvature" of the corner
	  was less than the radius of the pen used to stroke the path) then FontForge
	  would generate an incorrect path.
	<LI>
	  Round line joins were not a good approximation to circular arcs.
	<LI>
	  When filling the outline character view, rounding errors caused the fill
	  bitmap to stray from the outline.
	<LI>
	  Extend the functionality of the magnifying (or minifying) tool so that if
	  the user drags out a rectangle with it then the view will be shifted and
	  scaled so that rectangle fits in the window.
	<LI>
	  FontForge will no longer auto-generate hints on non-integral boundaries.
	  In Type1 fonts such hints become meaningless and just confuse things.
	<LI>
	  FontForge will now draw a halo around points which will be part of a flex
	  hint. See the <A HREF="prefs.html#UpdateFlex">UpdateFlex</A> preference item.
	<LI>
	  FontForge now has as set of commands for manipulating typographic features
	  in large lumps rather than one at a time.
	  <UL>
	    <LI>
	      Copy features from one font to another
	    <LI>
	      Remove certain features
	    <LI>
	      Give features a new tag
	  </UL>
	<LI>
	  I have greatly rewritten the code for dealing with AAT fonts
	  <UL>
	    <LI>
	      FontForge now supports mac feature/setting values to be used as feature tags
	      as well as opentype 4 letter tags
	    <LI>
	      FontForge will now read any feature in even if it doesn't map to an opentype
	      tag
	    <LI>
	      FontForge understands the most of the state machines in the morx/mort tables
	      (it does not understand ligature state machines, it parses these for all
	      unconditional ligatures, but it will miss any conditional ones).
	    <LI>
	      FontForge now lets you edit apple state machines
	    <LI>
	      FontForge lets you specify feature/setting names in the font to override
	      the default values specified in preferences
	  </UL>
	<LI>
	  Added support for reading Apple's format 3 kern sub-table format (another
	  way of storing a kerning class)
	<LI>
	  Oops. SVG didn't read relative movetos properly in a path option. Patch by
	  Kengo Ichiki.
	<LI>
	  Simplify had a bug when passed a path which consisted of a single point with
	  a zero length spline connecting it to itself
	<LI>
	  Simplify was not greyed out properly in quadratic fonts
	<LI>
	  Some of the low-level error routines consumed massive amounts of cpu time
	  while waiting for events
	<LI>
	  The PostScript parsing routines would sometimes think that "noaccess" was
	  part of the value of something in the private dictionary.
	<LI>
	  Several other patches to importing images by templates from scripts. By Kengo
	  Ichiki
	<LI>
	  Importing pcf bitmaps into the background had some problems.
      </UL>
    <LI>
      4-Sept-2003
      <UL>
	<LI>
	  the 17-Aug addition of context/chaining broke anchor classes. Should be fixed
	  now.
	<LI>
	  K&aacute;roly L&aacute;szl&oacute; has added Hungarian translations for the
	  style codes to Font Info-&gt;TTF Names
	<LI>
	  If a font had comments, an svg file generated from it had syntax errors.
	<LI>
	  Add support for generating multilingual strings (in 'name') for the apple
	  platform.
	<LI>
	  Add support for the packed gb2312 which mac and windows seem to use.
	<LI>
	  Make a UniqueID of -1 in Font Info mean that the font has no UniqueID.
      </UL>
    <LI>
      31-Aug-2003
      <UL>
	<LI>
	  Add problems for maximum number of hints (96) and maximum number of subroutine
	  nests (references) ~10.
	<LI>
	  I looked at AppleChancery again and figured out why I was having trouble
	  parsing its 'mort' ligature tables, and put in code to make it easy to parse
	  tables of this type.
	<LI>
	  After figuring that out, I realized there was a bug in my own table generation.
	  Suppose we have two ligatures "f l =&gt; fl" and "s t =&gt; st", and are
	  given "fst". Then my table would fail to find the "st" ligature. The state
	  of 'read "f" waiting for "l"' would see that it didn't get an "l" and revert
	  back to the initial state. It should instead have checked to see if "s" could
	  start a ligature in its own right, and if so jump to the 'got "s" waiting
	  for "t"' state.
	<LI>
	  The same fix needs to be done for contextual glyph substitution.
      </UL>
    <LI>
      29-Aug-2003
      <UL>
	<LI>
	  FontForge failed to display the morx table if all it contained were simple
	  substitutions.
	<LI>
	  FontForge generated incorrect simple substitution (AAT) tables if it found
	  a substitution with no valid elements
	<LI>
	  New problem for find problems. Check for characters with more than 1500 points
	  in them.
	<LI>
	  FontForge will now draw selected points in a different color (currently yellow),
	  and draws them bolder. This makes them stand out better for Find Problems
	  (but also makes it harder to distinguish between corner and curved points).
	<LI>
	  Redid the way FontForge handled arabic forms in AAT. Old method was cleaner
	  but depended on behavior which is unspecified in Apple's docs.
      </UL>
    <LI>
      27-Aug-2003
      <UL>
	<LI>
	  <FONT COLOR="Red"><STRONG><BIG>The preference dlg has been broken since about
	  12 July. Anything on the Preference-&gt;Font Info tab is probably
	  wrong.</BIG></STRONG></FONT>
	<LI>
	  FontForge wasn't always getting the script/lang right when filling in the
	  fields of the New Substitution dlg.
	<LI>
	  The newly generated apple state machines for context/chaining were quite
	  wrong. I hope I've got them right now.
	<LI>
	  The []PSNames checkbox (in Generate Font, Options dlg) did the opposite of
	  what it was documented to do. Behavior has been changed to conform to the
	  documentation (and expectations).
	<LI>
	  FontForge would crash when loading some sfd files from a few months ago.
      </UL>
    <LI>
      26-Aug-2003
      <UL>
	<LI>
	  When I added metadata to svg fonts (20-Aug) I inadvertently put in two closing
	  metadata tags. Which broke the font.
	<LI>
	  Fixed a bug conversion of context/chain coverage sub-table into a morx subtable.
	<LI>
	  Figured out in what cases I could generate a morx subtable from context/chain
	  glyph or class format subtables.
	<LI>
	  Fixed problems reading required features from ttf files.
	<LI>
	  Updated French UI
      </UL>
    <LI>
      25-Aug-2003
      <UL>
	<LI>
	  View-&gt;Show ATT didn't show contextual/chaining tables even if they would
	  be put in the 'morx' table
	<LI>
	  View-&gt;Show ATT had problems showing anything in 'morx'
	<LI>
	  Make it possible to edit contextual/chaining lookups that are formatted by
	  class
	<LI>
	  parsing/generating ttf files with class format context/chaining had problems
	<LI>
	  loading a class format context/chaining lookup caused memory problems when
	  closing the file.
	<LI>
	  FontForge would sometimes lose track of script/languages of lookups when
	  reading from a ttf file
	<LI>
	  Added a conversion routine from glyph to class format context/chain
	<LI>
	  Kanou points out that not all encodings available in Font Info-&gt;Encoding
	  are present in the scripting interface, and fixes that.
      </UL>
    <LI>
      22-Aug-2003
      <UL>
	<LI>
	  Fix simplify again
	<LI>
	  Patch from Andrey V. Panov to improve bluevalues
	<LI>
	  KDE refused to make the find problems explanation window visible, so now
	  I shan't make it invisible in the first place.
	<LI>
	  Generate mac family crashed instead (introduced 2-July)
      </UL>
    <LI>
      20-Aug-2003
      <UL>
	<LI>
	  Support for <A HREF="http://potrace.sf.net/">potrace</A>
	<LI>
	  Fix some bugs with simplify more
	<LI>
	  Mac build was badly configured and linked with a shared library it should
	  not have.
	<LI>
	  When compiled with -O2 fontforge had rounding errors which resulted in a
	  bad bezier order3=&gt;order2 conversion (PS-&gt;TTF)
	<LI>
	  SetPanose sometimes didn't
	<LI>
	  Patch from KANOU to set ulUnicodeRange for version 4
      </UL>
    <LI>
      18-Aug-2003
      <UL>
	<LI>
	  <FONT COLOR="Red"><STRONG><BIG>FontForge did not interpret SVG relative paths
	  properly, and did not generate correct SVG output because of
	  this</BIG></STRONG></FONT>. FontForge was mistakenly assuming things should
	  be interpreted as in the Type1 rrcurveto operator (where each point is relative
	  to the previous point in the operator) rather than the rcurveto operator
	  (where each point is relative to the initial point).
	<LI>
	  If FontForge opened a Bold font stored in OTF CFF format, then when it closed
	  that font it would either crash, or screw up memory so that a crash would
	  happen later.
      </UL>
    <LI>
      17-Aug-2003
      <UL>
	<LI>
	  Support for contextual, chaining contextual and reverse chaining contextual
	  sub-tables of GPOS/GSUB.
	  <UL>
	    <LI>
	      Will generate an Apple contextual glyph substitution table if:
	      <OL>
		<LI>
		  There is an apple feature which matches the otf tag
		<LI>
		  The sub-table is in coverage format
		<LI>
		  The sub-table contains either exactly one nested single glyph replacement
		  substitution, or<BR>
		  it contains exactly two single glyph replacements and one of them refers
		  to the last glyph matched (and the other does not)
	      </OL>
	  </UL>
	<LI>
	  KANOU points out that on screens with high dpi FontForge would sometimes
	  draw splines 2 pixels wide and sometimes 1 pixel wide (122dpi had this effect)
	<LI>
	  KANOU provided another patch for reading bitmaps one part covered a memory
	  leak the other fixed a bug reading ttc files.
	<LI>
	  Added a LoadEncodingFile scripting command
	<LI>
	  New french ui.
	<LI>
	  FontForge was using the wrong definition of ascent &amp; descent to set those
	  fields in the 'hhea' table. This confused some mac programs (perhaps others).
	<LI>
	  Added a "BBox" item to CharInfo scripting.
	<LI>
	  Added a FontsInFile scripting command to return an array containing the fontnames
	  of all fonts in a file. If an error occurs, a zero length array is returned.
	<LI>
	  Change so that when opening a file containing multiple fonts the font's filename
	  contains the fontname (so it is possible to open other fonts from the same
	  file).
	<LI>
	  Kanou provides a patch for compressing bitmaps with more than 8 bits of white
	  space to their left.
	<LI>
	  Markus Schwarzenberg provides a patch to make fontforge recognize $cidfamilyname
	  as it should have done.
	<LI>
	  Add the ability to generate fonts which contain both OpenType and Apple Advanced
	  Typography tables (ie. a font that should work everywhere).
	<LI>
	  Added Utf8(int), Chr(int), Ord(int) to interconvert between strings and their
	  encodings.
	<LI>
	  Add two problems to Find problems
	  <UL>
	    <LI>
	      Search for substitutions, contexts, kerning classes, etc. which refer to
	      a name which does not match any glyph in the font
	    <LI>
	      Search for contexts, chains, etc. which refer to a nested lookup which does
	      not exist
	  </UL>
	<LI>
	  Add a new command line argument "-last" which will load the last sfd file
	  closed. 
	    <HR>
	<LI>
	  FontForge would crash when importing bitmap fonts
	<LI>
	  FontForge would crash when trying to do an Element-&gt;Default ATT-&gt;Suffix
	  to Tag command
      </UL>
    <LI>
      3-Aug-2003
      <UL>
	<LI>
	  I still wasn't getting r2l kerns correct
	<LI>
	  Add support for vertical kerning
	  <UL>
	    <LI>
	      In 'GPOS', 'kern' tables of Open/TrueType
	    <LI>
	      In SVG fonts
	    <LI>
	      menu commands
	      <UL>
		<LI>
		  Remove VKern
		<LI>
		  Vertical Kern By Classes
		<LI>
		  VKern From HKern
	      </UL>
	    <LI>
	      scripting
	      <UL>
		<LI>
		  RemoveVKern
		<LI>
		  SetVKern
		<LI>
		  VKernFromHKern
		<LI>
		  Add a "VKern" item to CharInfo
		<LI>
		  <FONT COLOR="Red"><B>Type argument to SelectByATT has changed</B></FONT>!!!
	      </UL>
	  </UL>
	<LI>
	  Add support for other Pairwise positioning features.
	<LI>
	  Add a $panose command to return an array of panose values (scripting)
	<LI>
	  Add a SetPanose command allowing scripts to change panose values
	<LI>
	  FontForge was not rotating .vert glyphs properly
      </UL>
    <LI>
      31-Jul-2003
      <UL>
	<LI>
	  Installed KANOU's fix for a buffer overrun
	<LI>
	  Installed KANOU's fix for compacted cid-keyed fonts
	<LI>
	  Fixed another bug with compacted cid-keyed fonts
	<LI>
	  Mathias Wollin points out that my pfm files don't have the correct kerning
	  table format
	<LI>
	  Handles the case where a font has both a 'glyf' and a 'CFF ' table by asking
	  user which to use
	<LI>
	  Various improvements to the goto dialog from James Crippen.
	<LI>
	  If the ttf "Apple" box got checked then it remained checked in subsequent
	  Generate Fonts even though the [Options] dialog did not show it checked.
	<LI>
	  FontForge would crash if given an Anchor class with no marks.
	<LI>
	  Hmm... I notice that volt only uses format 2 coverage tables. I wonder if
	  windows fails to handle format 1 tables...
      </UL>
    <LI>
      30-Jul-2003
      <UL>
	<LI>
	  Add support for <A HREF="http://www.w3c.org/TR/SVG11/fonts.html">svg fonts</A>
	  (and add dependency on libxml2 for reading them in)
	<LI>
	  Add support for importing/exporting svg files (again libxml2 needed for import)
	<LI>
	  Add support for required features.
	<LI>
	  In quadratic fonts the ellipse tool did not draw ellipses
	<LI>
	  Add support for rectangles/ellipses drawn center out rather than just within
	  the bounding box
	<LI>
	  Preserve the rect/ellipse tool settings across invocations
	<LI>
	  Put a license entry into the help menu
      </UL>
    <LI>
      20-Jul-2003
      <UL>
	<LI>
	  made the default linux browser be mozilla rather than netscape.
	<LI>
	  If the metrics view were displaying an anchored pair (mark-base), and a character
	  were typed into the text field at top before the anchored pair, then the
	  display got very strange.
	<LI>
	  FontForge got confused when merging a font which contained multiple encodings
	  for the same glyph
	<LI>
	  FontForge got confused if there were an lparen in a directory name (thought
	  this meant a font collection).
      </UL>
    <LI>
      15-Jul-2003
      <UL>
	<LI>
	  We weren't parsing any type3 fonts properly any more
	<LI>
	  Extend our ps interpreter to understand some of METAPOST's idioms better.
	<LI>
	  I used to call all characters which weren't in the encoding ".notdef" this
	  could cause problems if a user forgot to name them. I now give them unique
	  names starting with "NameMe". I still leave characters &lt;256 called ".notdef"
	  if the encoding calls for it, this may be a mistake...
	<LI>
	  Fix on 14-July to simplify was incomplete.
	<LI>
	  More fiddling with autohint
	<LI>
	  Added support for the new X11 opentype bitmap format.
      </UL>
    <LI>
      14-Jul-2003 (Bastille Day!)
      <UL>
	<LI>
	  There are still cases where I'm getting the truetype point count wrong. If
	  a truetype file had a control point that lay under an end point, then I would
	  treat that as a "no control point" mark, and ignore the cp. But if I do that
	  blindly I mess up the point count, so during font generation I must be prepared
	  to put the cp back.
	<LI>
	  Kanou provided a patch to fix a bug in the underlying graphics library.
	<LI>
	  Add a popup menu to Show Att to allow those data to be saved (as utf8 text)
	<LI>
	  Fixed (I hope) right to left kerning
	<LI>
	  Added 'ccmp' entries by default for Hebrew
	<LI>
	  Fixed a couple of bugs with the new simplify more options
	<LI>
	  fontforge didn't compile on solaris. It now does.
      </UL>
    <LI>
      12-Jul-2003
      <UL>
	<LI>
	  Remove weirdness in scripting interface to TeX font parameters
	<LI>
	  Kanou points out that the code for reading format 4 embedded (ttf) bitmaps
	  was ambiguous and would behave incorrectly sometimes. He provided a patch.
	<LI>
	  FontForge used not to create ghost hints for curved splines. It does now.
	<LI>
	  FontForge did not find some of the hints needed for n021004l.pfb
	<LI>
	  New French UI
	<LI>
	  FontForge would sometimes crash when autotracing characters
	<LI>
	  Don't snap to points when moving control points
	<LI>
	  Directory browsing didn't work if the local encoding wasn't latin1 and the
	  directory name contain non-ascii characters.
	<LI>
	  Add an entry to find problems to look for 'GSUB' entries to non-existent
	  characters.
	<LI>
	  Expanded the simplify more command
	<LI>
	  The GPOS output routines got very unhappy if a duplicate glyph happened to
	  have GPOS data. Fixed on both ends I hope.
	<LI>
	  The pcf reader was unhappy if
	  <UL>
	    <LI>
	      the glyph bb width was a multiple of 8 (we read an extra byte per line which
	      made the result appear as garbage)
	    <LI>
	      several glyphs had the same name.
	  </UL>
	<LI>
	  the FontInfo dlg failed to parse the merge_with field of Anchor Classes properly,
	  meaning that each time [OK] was pressed in fontinfo each anchor class name
	  got a number prepended to it.
	<LI>
	  Change the way the merge_with field of anchor classes is handled by the UI
	  so that it makes more sense. We used to display a number, now display the
	  name of another anchor class with which it can be merged.
	<LI>
	  Added an arabic text sample, courtesy of Thomas Milo.
	<LI>
	  Upgraded to Unicode 4.0 (<FONT COLOR="Red"><STRONG>Note:
	  <A HREF="http://libuninameslist.sf.net/">libuninameslist</A> has also been
	  upgraded</STRONG></FONT>)
	<LI>
	  Added a new preference item CharCenterHighest to assist in accent placement.
	    <HR>
	<LI>
	  Oh. This isn't documented, but each langsys table can only point to one (1)
	  feature with a given tag. So if I have multiple 'mark' lookups, I can't have
	  multiple 'mark' features, I must have one 'mark' feature with pointers to
	  many lookups.
	<LI>
	  FontForge could crash when generating a tfm file from a CID keyed font
	<LI>
	  Change GDEF output so that the class def table isn't generated when it isn't
	  needed (we used to generate a 0 length one, which would confuse the freetype-1
	  opentype code, and perhaps others).
	<LI>
	  Fixed a bug in autohint caused by negative stem widths.
      </UL>
    <LI>
      4-July-2003
      <UL>
	<LI>
	  Added a page to the font info dlg which allows users to set TeX font parameters
	<LI>
	  Added a mechanism for specifying TeX charlists and extension characters
	<LI>
	  Added a mechanism for specifying TeX Italic Correction
	<LI>
	  Revamped support for reading tfm files so that it sets all these new things
	  correctly.
      </UL>
    <LI>
      2-July-2003
      <UL>
	<LI>
	  Add an Options dialog to the Generate Font window, and remove the check boxes
	  from it.
	  <UL>
	    <LI>
	      Add a UI for the 'PfEd' table
	    <LI>
	      Add a UI to turn off PostScript hinting
	  </UL>
	<LI>
	  FontForge can now generate a tfm and enc file (for TeX)
      </UL>
    <LI>
      30-June-2003
      <UL>
	<LI>
	  I<FONT COLOR="Red"><STRONG>n the table of contents at the start of a true/open
	  type file the GDEF table was listed as having the wrong size. This caused
	  many applications to ignore it, which in turn meant that Mark to Base GPOS
	  tables were ignored </STRONG></FONT>(at least I hope that's what was going
	  on).
	<LI>
	  On the mac local help files weren't working properly.
	<LI>
	  Combining unicode characters (mark glyphs) should have an advance width of
	  0, and now they default to that.
	<LI>
	  Several people at EuroTeX wanted more pen shapes in the expand stroke dlg.
	  Ellipses are easy, so we add them.
	<LI>
	  One guy at EuroTeX wanted to be able to store arbitrary per-glyph data in
	  the font, so add a new (private) true/open type table that can contain the
	  glyph comments. This table has tag 'PfEd' and can contain sub-tables containing
	  font comment, glyph comments, glyph colors. Perhaps other data as need arises.
	<LI>
	  Kanou has added a new scripting command, SizeOf, to return the number of
	  elements in an array.
      </UL>
    <LI>
      19-June-2003
      <UL>
	<LI>
	  Added a histogram dialog to help figure values for StemSnap[H/V]
      </UL>
    <LI>
      17-June-2003
      <UL>
	<LI>
	  Scripting interface to SelectByATT
	<LI>
	  Crash bug caused by incorrect CID fix on 15-June
	<LI>
	  (the web interface to the cvs tree seems broken. It doesn't show rmligamarks).
	  Here's a copy of <A HREF="rmligamarks.c">rmligamarks.c</A>.
      </UL>
    <LI>
      15-June-2003
      <UL>
	<LI>
	  Cleaned up the spelling of some scripts.
	<LI>
	  Deactive the [Edit] button of the Script/Lang list when appropriate.
	<LI>
	  FontForge wasn't removing the quotes around the copyright notice when read
	  from a bdf file. After several rounds of read/save there were lots of quotes.
	<LI>
	  Added a wireframe effect.
	<LI>
	  Added a find problems entry which will check for control points which are
	  very close to their main point (so close that it is unlikely that they will
	  effect the curve much).
	<LI>
	  The Undo command from the font view did not reset the character changed bit.
	<LI>
	  GDEF table output had problems with cid-keyed fonts.
	<LI>
	  So did 'prop' table output.
	<LI>
	  Expanded View-&gt;Show ATT to show 'GDEF', 'lcar', 'prop', 'opbd' tables.
	<LI>
	  Added a Ligatures entry for View-&gt;Combinations in the outline character
	  view
	<LI>
	  Added "Edit-&gt;Select-&gt;Select by ATT", to allow user to select characters
	  depending on advanced typographic features.
	<LI>
	  <FONT COLOR="Red"><STRONG>FontForge always used to set the
	  "ignore-combining-marks" flag bit for all ligatures. But yudit (and probably
	  gedit) will not process the substitution if that bit is set. On the other
	  hand I believe some arabic ligatures may depend on it (at least arabtype-volt.ttf
	  uses it). So... now we only set this bit for arabic ligatures which do not
	  contain combining marks. Dunno if that is right either.</STRONG></FONT>
	  <UL>
	    <LI>
	      I have created a little tool,
	      <A HREF="http://cvs.sourceforge.net/viewcvs.cgi/pfaedit/pfaedit/fonttools/rmligamarks.c">rmligamarks</A>,
	      which will take an sfd file with the "ignore combining marks" bit in ligatures
	      and turn it off. It does not try to guess what should be done, it ALWAYS
	      turns the bit off.
	  </UL>
      </UL>
    <LI>
      5-June-2003
      <UL>
	<LI>
	  FontForge was generating Apple 'morx' tables with the right to left bit reversed
	  (so it thought latin text was right to left and arabic was left to right).
	  This meant that ligatures happened backwards (the "ffi" ligature would be
	  invoked if you typed in "iff")
	<LI>
	  FontForge was generating a format=1 glyph class definition sub-table of GDEF.
	  ttx didn't like this, I'm not sure why. Problem goes away if I generate a
	  format=2 sub-table.
      </UL>
    <LI>
      4-Jun-2003
      <UL>
	<LI>
	  Added a Shadow effect
	<LI>
	  More fixes for remove overlap
	<LI>
	  fixed a bug with timers
	<LI>
	  Preserve the Fit To Em mode of a font.
	<LI>
	  Added a bunch of scripts (as in writing systems, not executable files) from
	  the proposed ISO 15924 standard.
	<LI>
	  Added support for underline position to bdf files.
	<LI>
	  The 18-May build was bad and failed to read postscript fonts properly on
	  many platforms (the sources were ok, but the builds were bad)
	<LI>
	  Display the version number in the about box, and attach it to the directory
	  in the source .tgz file.
      </UL>
    <LI>
      18-May-2003
      <UL>
	<LI>
	  FontForge would crash when asked to produce a ttf font where there was an
	  unused anchor class.
	<LI>
	  The original encoding is now preserved when a font is generated.
	<LI>
	  The goto dialog (and scripting) now recognize "glyph&lt;nnn&gt;" as refering
	  to glyph &lt;nnn&gt; in the original encoding.
	<LI>
	  Kanou provided two scripting commands, ConvertToCID and ConvertByCMap.
	<LI>
	  Added a Remove External flag to Expand Stroke to complement Kanou's Remove
	  Internal
	<LI>
	  Expanded on Remove Overlap by adding
	  <UL>
	    <LI>
	      Intersection -- which removes everything except the overlap
	    <LI>
	      Exclude -- which removes areas where any selected contours cross non-selected
	      contours (and then removes the selected contours)
	  </UL>
	<LI>
	  Added an Effects sub-menu of Elements, including (so far)
	  <UL>
	    <LI>
	      Outline -- turns the selected characters into outline versions of themselves
	    <LI>
	      Inline -- turns the selected characters into inline versions of themselves
	  </UL>
	<LI>
	  FontForge would crash when reading in an sfd file containing a kerning class
	<LI>
	  gimp objected to some of my ttf fonts. I think because it is inappropriately
	  clipping to the ascent/descent values in the hhea rather than using the font's
	  bounding box. It's easy enough to preserve the 'hhea' ascent/descent values
	  and perhaps that will be enough to make gimp happy.
	<LI>
	  Kanou points out that rasterization has problems with the new TOfNextMajor,
	  so use the new code for remove overlap and friends and the old code for
	  rasterization
      </UL>
    <LI>
      12-May-2003
      <UL>
	<LI>
	  Added a command to do non-linear transformations (but made it require user
	  configuration to have it compiled)
	<LI>
	  Added a UI for Kanou's Remove Internal flag to Expand stroke
      </UL>
    <LI>
      9-May-2003
      <UL>
	<LI>
	  Apple's 'lcar' (ligature caret) table was being generated incorrectly
	<LI>
	  Another bug in point numbering
	<LI>
	  Make "Slanted" a synonym for Oblique.
      </UL>
    <LI>
      8-May-2003
      <UL>
	<LI>
	  FontForge did not recognize "filename(fontname)" notation for loading a specific
	  font from a resource fork of a mac file.
	<LI>
	  FontForge crashed on the mac when generating a GPOS table. There was an
	  uninitialized variable there, left behind be recent changes. Removed.
      </UL>
    <LI>
      7-May-2003
      <UL>
	<LI>
	  Oops. It should be legal for a 'mkmk' anchor class to have two points in
	  a glyph, one the normal mark point, the other the base mark point. (that
	  is it should be possible for a glyph to attach to itself).
	<LI>
	  Kanou supplied a patch to extend expand stroke.
	<LI>
	  Changed behavior of AnchorClasses so that two classes could be associated
	  to form a single feature (ie. one class of "Above" marks, and one class of
	  "Below" marks)
	<LI>
	  Show ATT now displays something meaningful for marks
	<LI>
	  Some general Anchor Class clean up.
	<LI>
	  Was not setting bits in the CodePage[1] field of the OS/2 table for all the
	  weird MS specific encodings. It seems I should do that.
      </UL>
    <LI>
      6-May-2003
      <UL>
	<LI>
	  Although undocumented, digits behave just like lower case letters in macintosh
	  filenames for postscript resource fonts. 
	    <HR>
	<LI>
	  Looking at the font info-&gt;ttf values dialog would cause fontforge to crash
	  after [Ok] was pressed.
	<LI>
	  Old sfd files with anchor classes but not script lang index would crash fontforge
	  when being read in.
      </UL>
    <LI>
      5-May-2003
      <UL>
	<LI>
	  Made it possible to select kerning class 0 (ie. everything that isn't specified)
	<LI>
	  Put in a check to make sure the user didn't add a glyph to two different
	  kerning classes
	<LI>
	  <FONT COLOR="Red"><STRONG>FontForge was dumping out a full GSUB sub-table
	  for each character that sub-table applied to (rather than one sub-table for
	  all characters). So there were tons of duplicates.</STRONG></FONT>
	<LI>
	  <FONT COLOR="Red"><STRONG>FontForge was producing extension sub-tables that
	  held an incorrect offset.</STRONG></FONT>
	<LI>
	  Added some code to protect FontForge when it read incorrect ttf fonts like
	  those generated above.
	<LI>
	  Drag and Drop to the Char Info dlg was broken.
	<LI>
	  If a font had a non-notdef character at encoding 0 and we used freetype to
	  generate bitmaps for it, then those bitmaps would be assigned to the wrong
	  glyphs (ie. the bitmap for "A" would go to "B", etc.)
	<LI>
	  I used "Mac Roman" in several places where I should have said "Macintosh
	  Latin"
      </UL>
    <LI>
      4-May-2003
      <UL>
	<LI>
	  Added code to determine better defaults for the script lang index
	<LI>
	  The ligature state table in Apple Chancery has so many possible paths through
	  it that FontForge bogs down when evaluating it. I presume it would finish
	  in finite time, but it takes unacceptably long. So I've put in an abort.
	<LI>
	  Add support for KernClasses (ie. they are no longer just converted into a
	  large number of kernpairs, but will be stored internally as a set class and
	  will be output as such). And they have their own dialogs to manage them.
	<LI>
	  Add support for Apple's new version of the 'kern' table.
	<LI>
	  Add support for the format 2 sub table of Apple's 'kern' table (which is
	  different from OpenType's format 2 sub-table of the kern table), and is Apple's
	  kerning class sub-table (note:
	  <A HREF="http://developer.apple.com/fonts/TTRefMan/RM06/Chap6kern.html">Apple's
	  docs </A>are
	  <FONT COLOR="Red"><SMALL><STRONG>WRONG</STRONG></SMALL></FONT>. they claim
	  class data are stored in an array of uint8, but they really are in an array
	  of uint16).
      </UL>
    <LI>
      29-Apr-2003
      <UL>
	<LI>
	  Oops, one more fix to remove overlap
	<LI>
	  Kanou points out that copy hasn't been working (for some time now) when a
	  contour has be split into bits, only one of the bits is copied.
	<LI>
	  Kanou points out that Paste reorders open contours
	<LI>
	  Further work on Show ATT dlg
	<LI>
	  Further work on multiple features.
      </UL>
    <LI>
      28-Apr-2003
      <UL>
	<LI>
	  Yet more fixes for Remove overlap
	<LI>
	  Added a mode to the ruler tool where it shows the exact position of the mouse
	  cursor
	<LI>
	  The Goto command had a strange bug: If a font had a glyph with a known name,
	  but that glyph did not reside at the unicode slot assigned to that name,
	  then goingto that name would go to the (empty) unicode slot, rather than
	  to the actually character.
	<LI>
	  Werner wants a <A HREF="showatt.html">dlg</A> which shows collects all the
	  GPOS/GSUB (morx/kern) information in one place rather than scattering it
	  around hundreds of dlgs.
	<LI>
	  FontForge now stores the script/langs for kern pairs
	<LI>
	  FontForge failed to read script/langs for GPOS properly.
	<LI>
	  FontForge had problems generating an AFM file from a CID font with ligatures
	<LI>
	  FontForge had problems getting script lang lists right when multiple features
	  refered to the same lookup.
      </UL>
    <LI>
      20-Apr-2003
      <UL>
	<LI>
	  One of FontForge's deficiencies is that it handles multiple encodings for
	  the same glyph very badly (it does not have the multiple layers of indirection
	  that fonts do). Rather than solve this properly I have added a new command
	  that allows for this case.
	  <A HREF="editmenu.html#SameGlyphAs">SameGlyphAs</A>.
	<LI>
	  Add some more synonyms for greek glyph names
	<LI>
	  Failed to realize that U+1FED was an accent
	<LI>
	  No longer tries to build greek accents out of latin ones when Build Accented
	  is invoked. (but still will for Build Composite).
	<LI>
	  When swapping character names, check for names like "uniXXXX" and instead
	  of swapping it, rebuild it as appropriate for the other character.
	<LI>
	  Font Info-&gt;Encoding failed to change the encoding properly when switching
	  from "Compacted" to anything other than the original encoding.
	<LI>
	  A couple of changes to the italian translation
	<LI>
	  Added an "Original" encoding which gives you back the ordering of the glyphs
	  in the ttf font. (this may be changed when you regenerate a ttf font)
	<LI>
	  FontForge failed to read ttf instructions for composite glyphs.
	<LI>
	  FontForge got confused if a ttf file had multiple glyphs named ".notdef"
	  (which to me looks like a bug in the ttf font, but Times New Roman does this
	  so I have to deal with it).
	<LI>
	  Added a command to the popup menu in the charview to bring up a window looking
	  at a reference.
	<LI>
	  Add a check for when sfd files contain bad kerning info.
      </UL>
    <LI>
      14-Apr-2003
      <UL>
	<LI>
	  Change a tab in Font Info from "PS General" to "General"
	<LI>
	  When searching for encoding files, look for the extension ".enc" used by
	  TeX for PostScript encoding files
	<LI>
	  Fixed a crash when setting a character's name to a name already given to
	  another character
	<LI>
	  Added many new X resources for controlling colors in the outline character
	  view.
      </UL>
    <LI>
      7-Apr-2003
      <UL>
	<LI>
	  Program generated divide by zero errors when using Meta-Shift to move a control
	  point which didn't exist.
	<LI>
	  (cleaned up some syntax issues in non-English nomen files)
	<LI>
	  Added new scripting commands ClearPrivateEntry, ChangePrivateEntry,
	  GetPrivateEntry
	<LI>
	  Added new scripting command: UnicodeFromName
	<LI>
	  Added new script command: RemoveATT
	<LI>
	  Vadim pointed out that loading "pala.ttf" and then generating it again (as
	  ttf) produced bad results. FontForge was getting confused by the points which
	  were used to control Anchors, getting its points list out of order and generally
	  screwing up.
      </UL>
    <LI>
      04-Apr-2003
      <UL>
	<LI>
	  autosave sometimes lost track of which font it should be applying changes
	  to.t
	<LI>
	  Add Extrema (or just adding a point in the middle of a spline) would generate
	  incorrect splines if the spline were linear in one but not both of the two
	  dimensions
	<LI>
	  One more change to Merge/Simplify. Deal with the case of a curve point with
	  no control point (use the control point in the opposite direction to get
	  the slope).
	<LI>
	  Typo in 2-Apr script/lang fix caused crashes.
	<LI>
	  TeXBaseEncoding (T1) changed in Oct-2002. Updated my version (also updated
	  the other TeX encodings I've got and included the cyrillic ones into
	  Encodings.ps.gz)
	<LI>
	  Sometimes we failed to remove the dot when creating a dotless i/j character.
	<LI>
	  Merge/Simplify had conniptions when given a zero length spline.
	<LI>
	  Added "DefaultATT" and "AddATT" scripting command to allow user to add Advanced
	  Typography features to characters.
      </UL>
    <LI>
      2-Apr-2003
      <UL>
	<LI>
	  Problems with script/lang when: Pasting or Merging ligatures and substitutions
	  from one font to another
	<LI>
	  FontForge could generate points (within a ttf simple glyph) in a different
	  than the original glyph, meaning that the instructions would move the wrong
	  point resulting in blots. I have fixed this (or at least the cases I found).
	<LI>
	  FontForge would always give ASCII characters their standard names in a ttf
	  post table. This was wrong if the character did not have its standard name.
	<LI>
	  FontForge could go into an infinite loop on some simplifies.
      </UL>
    <LI>
      1-Apr-2003 (April Fish!)
      <UL>
	<LI>
	  Fixed a crash in the Join command
	<LI>
	  Fixed a crash when loading some truetype fonts (never bothered to figure
	  which ones exactly)
	<LI>
	  Fixed a similar crash when loading old sfd files (note some old fonts won't
	  guess the script for ligatures, etc. properly)
	<LI>
	  Added a new preference item: Stop At Join
	<LI>
	  Changed the way control points are set when changing point type.
	<LI>
	  The fill of the outline view sometimes lagged the change.
	<LI>
	  Added another tag to CharInfo scripting command: GlyphIndex. It returns the
	  glyph number in the ttf font.
	<LI>
	  Werner suggests that instead of naming things "nounicode-%x" where %x is
	  the encoding, use "nounicode-%d-%d-%x" where the two new arguments are the
	  platform/specific pair used in the cmap we picked.
      </UL>
    <LI>
      31-Mar-2003
      <UL>
	<LI>
	  FontForge was not reading pfb fonts properly if they had more than one binary
	  section header.
	<LI>
	  When FontForge removed a character it did not remove all the kernpairs that
	  refered to that character.
	<LI>
	  Fixed more leaks with valgrind.
	<LI>
	  Added more synonyms for glyph names from Adobe Glyph List (I still rely on
	  Glyph names for New Fonts as my basic set of names)
	<LI>
	  FontForge had problems if the use selected 0 levels of undoes when the UI
	  was active.
	<LI>
	  Selecting the freehand tool in a quadratic font caused a crash. (The freehand
	  tool doesn't work in quadratic fonts, but it shouldn't crash)
	<LI>
	  Changed the way scripts are specified. I used to assign a script to every
	  character. I realize that doesn't work. The digits are used in many scripts
	  and the fraction ligatures based on them need to be seen in all those scripts,
	  not just the one that the digit was assigned to. So...
	  <UL>
	    <LI>
	      Glyphs no longer have a script assigned to them
	    <LI>
	      Substitutions, Ligatures, Anchor Classes and other Advanced Typographic features
	      now have a list of scripts (and languages) for which they are active.
	    <LI>
	      There is now an absurdly complex <A HREF="charinfo.html#Feature-Tag">stream
	      of dialogs</A> which may be used to set this list.
	  </UL>
	<LI>
	  Added a new preference item to allow the user to specify a local help directory
	<LI>
	  Added a new scripting command SelectIf which allows you to determine whether
	  a character is in a font (Select signals an error if the character isn't
	  there, SelectIf returns failure).
	<LI>
	  Added a new scripting command to change a font's order (from quadratic to
	  cubic)
	<LI>
	  ScaleToEm scripting command will now accept a single argument, the em-size.
	<LI>
	  Added a new scripting command to allow you to apply an otf substitution to
	  the font
	<LI>
	  Added a new scripting command to give control over which ligatures are output
	  in an afm file
	  <UL>
	    <LI>
	      (it used to be that all ligatures were output in the afm file, no only 'liga'
	      and 'rlig' that appear in a default language are output)
	  </UL>
	<LI>
	  AFM files only support 2 character ligatures. So, when possible, generate
	  a sort of closure on the ligatures. So if we are given the two ligs "ffi-&gt;f
	  f i" and "ff-&gt;f f" then add the ligature "ffi-&gt;ff i". This means that
	  the sequence f+f-&gt;ff+i-&gt;ffi will eventually reach the ligature we want.
	<LI>
	  Changed so that an untitled anchor class is now called "Anchor-*" rather
	  than "Untitled-*".
	<LI>
	  Rewrote Merge &amp; Simplify commands. In my tests they now produce better
	  results.
	<LI>
	  Type2 font generation did not make use of hv/vh curveto commands in some
	  cases
	<LI>
	  When figuring out whether to synchronize the width/lbearing of a base character
	  with the composites containing it, I only checked if the base character was
	  alphabetic. But that doesn't work for hebrew where unicode says the marks
	  are alphabetic. So add an additional check that it can't be a combining
	  character.
	<LI>
	  When pasting a composite character from one font to another, the saved width
	  is not useful. Added a check that finds the correct width of the appropriate
	  base character.
	<LI>
	  When pasting a composite character from a font with one em-size to another
	  with a different em-size try to scale the amount references are translated
	  by an appropriate amount.
	<LI>
	  CharInfo scripting command has been extended to allow users to test the presence
	  of substitutions
	<LI>
	  Some fonts (bsmi00lp.ttf for one) have bad cmap tables which map several
	  glyphs to the same unicode code point. Put in a check for this and only map
	  one glyph to that code point now.
      </UL>
    <LI>
      13-Mar-2003
      <UL>
	<LI>
	  Add a preference item to control the number of undoes saved per character
	<LI>
	  Turn off saving undoes when in a script started from the command line
	<LI>
	  Added a preference item to control the undo depth from the UI.
	<LI>
	  Try to do better about scaling my chunk allocator to machines with 8 byte
	  pointers
	<LI>
	  Was doing 32 bit arithmetic when reading GSUB simple substitution lookups
	  when I should have done 16 bit.
	<LI>
	  Tracked down a lot of memory leaks with valgrind (and some uninitialized
	  variables too)
	<LI>
	  Added access to a font's version from scripting
	<LI>
	  Added PostNotice scripting command
	<LI>
	  When reading a ttf/otf font with a GSUB table fontforge will try to guess
	  reasonable names for unnamed glyphs by looking them up in the GSUB table.
	  Thus an unnamed vertical variant for "A" might be named "A.vrt2".
	<LI>
	  FontForge would crash when outputting ttf files with no 'cvt' table (bug
	  introduced around 27-Feb)
	<LI>
	  the configure script did not respect the argument --with-freetype-src as
	  it should have.
      </UL>
    <LI>
      10-Mar-2003
      <UL>
	<LI>
	  Added a TrueType instruction debugger (actually an interface to FreeType's
	  truetype bytecode interpreter)
	  <TABLE BORDER CELLPADDING="6" WIDTH="50%" ALIGN=CENTER>
	    <TR>
	      <TD BGCOLOR="#ffff00">This command depend on your compiling freetype with
		the byte code interpreter enabled. This is disabled by default because it
		infringes on certain
		<A HREF="http://freetype.sourceforge.net/patents.html">patents granted to
		Apple</A>. If you have a license from Apple then you may enable the interpreter
		by setting the appropriate macro in .../include/freetype/config/ftoption.h
		before you build the library (see the README.UNX file on the top level of
		the freetype distribution).
		<P>
		FontForge needs to have the freetype source directories available when it
		is built (there are some include files there which it depends on)</TD>
	    </TR>
	  </TABLE>
	<LI>
	  Added an Edit-&gt;Copy Grid Fit command (to put the grid fit splines into
	  the clipboard)
	<LI>
	  Added a warning if the freetype library doesn't have a byte code interpreter
	  so that the user knows his/her splines have been autohinted (rather than
	  had the bytecode instructions run).
	<LI>
	  Improved Edit-&gt;Merge in some cases that don't fit its constraints
	<LI>
	  KANOU found some more underscores in character names
	<LI>
	  And provided a new japanese ui
	<LI>
	  Round to Int had problems on quadratic splines
	<LI>
	  Added support for runtime loading of dynamic libraries on the mac.
      </UL>
    <LI>
      03-Mar-2003
      <UL>
	<LI>
	  Memory got screwed up when converting TTF splines to PS ones
	<LI>
	  KANOU suggested some changes to the quadratic spline UI
	<LI>
	  I had the wrong makefile at top level so builds didn't
	<LI>
	  syntax error on systems without freetype
      </UL>
    <LI>
      02-Mar-2003
      <UL>
	<LI>
	  Changed the Show Instructions command to be an Edit Instructions
	<LI>
	  Bug saving 'prep' table
	<LI>
	  Bug changing 'cvt ' table
	<LI>
	  Added ability to look at gridfit splines in charview.
      </UL>
    <LI>
      28-Feb-2003
      <UL>
	<LI>
	  New dialog in outline view to examine ttf instructions
	<LI>
	  If an sfd file was created from a script then when it was next opened from
	  the UI it would appear in a tiny window.
	<LI>
	  The preference item refering to the []Hint check box in the generate dlg
	  has been renamed.
	<LI>
	  A checksum-like thing has been added to ui files so that in the future the
	  application will refuse to use .ui files which do not match its expectations.
      </UL>
    <LI>
      27-Feb-2003
      <UL>
	<LI>
	  Didn't get the SetLBearing change right yesterday.
	<LI>
	  Changing to quadratic splines with Font Info could generate an invalid spline.
	<LI>
	  We now preserve truetype instructions when reading in a truetype file (the
	  fpgm and prep tables, the cvt table and any per character instructions)
	<LI>
	  These instructions will be dumped out when generating truetype fonts
	<LI>
	  Added a menu command AutoInstr to generate our own (bad) instructions for
	  a character.
	<LI>
	  Any significant change (ie. anything that reorders the points, or adds or
	  removes points) will clear the instructions for that character.
	<LI>
	  Changing to cubic splines (fontwide) will clear the instructions (and the
	  fpgm and prep tables).
      </UL>
    <LI>
      26-Feb-2003
      <UL>
	<LI>
	  configure scripts got confused in the freetype libraries were findable but
	  the include files were not. Changed the scripts so that freetype is marked
	  not present if the include files are missing.
	<LI>
	  Table ordering was not read in properly from an sfd file
	<LI>
	  Typos in SetCharName &amp; SetUnicodeValue prevented second argument from
	  working
	<LI>
	  Added a second argument to SetLBearing and friends to allow relative bearing
	  settings (ie. to increment the bearing by some amount)
      </UL>
    <LI>
      25-Feb-2003
      <UL>
	<LI>
	  Bad bug in GSUB generation introduced yesterday
	<LI>
	  Font level round 2 int command now rounds hints too.
	<LI>
	  Adobe lies when they say that a hint can't stretch from one bluezone to another,
	  so be a bit more cautious in removing this case.
	<LI>
	  Be a little better about getting the script from the GSUB/GPOS table. 
	    <HR>
	<LI>
	  FontForge had problems generating mac cursive connection setting.
	<LI>
	  FontForge had problems defaulting ligatures in cid keyed fonts (even if there
	  were no ligature characters to be defaulted, the attempt would fail)
	<LI>
	  I introduced memory problems yesterday. Fixed.
	<LI>
	  Font level round 2 int will take hints into account when positioning points
	  in order to maintain stem widths. 
	    <HR>
	<LI>
	  When running a script from the command line FontForge failed to initialize
	  the adobe standard encoding.
      </UL>
    <LI>
      24-Feb-2003
      <UL>
	<LI>
	  Claudio Beccari has provided an Italian UI.
	<LI>
	  (added Italian style translations to fontinfo)
	<LI>
	  User now has the ability to control the conversion from mac feature/settings
	  to otf features.
	<LI>
	  FontForge now remembers the order features are to be applied in GSUB/GPOS/morx
	  tables (and dumps features out in that order when it next saves them).
	<LI>
	  FontForge allows you to reorder the GSUB/morx tables should you wish to do
	  so. I am sufficiently ignorant that I don't believe it is necessary to reorder
	  the GPOS table, so there is currently no UI for this. If I am wrong let me
	  know and I will add that too.
	<LI>
	  The 'kern' table was not being generated when it should have been. This error
	  was introduced sometime in the last month due to the AAT changes.
	<LI>
	  Scripts generating otf fonts would crash if the font had non-integral coordinates
	  because of a bug in my PostNotice routine when running without X.
      </UL>
    <LI>
      18-Feb-2003
      <UL>
	<LI>
	  Hmm. It looks as though apple uses the "ascending glyph" flag on the features
	  of the 'mort'/'morx' tables to mean left to right text
	<LI>
	  Fixed a crash on reading a GSUB table with a glyph out of range.
	<LI>
	  Added support for a cursive connection (contextual glyph substitution subtable
	  of) morx.
	<LI>
	  Added an <A HREF="realindex.html">index</A> to this manual and put a link
	  to it in FontForge's Help menu. Index is by no means complete yet.
      </UL>
    <LI>
      12-Feb-2003
      <UL>
	<LI>
	  Support direct editing of quadratic (truetype) splines
      </UL>
    <LI>
      11-Feb-2003
      <UL>
	<LI>
	  Change made on 8 Feb 2003 broke the code that read type1 flex hints
	<LI>
	  Hide files beginning with "." (except for "..") in file chooser dlgs.
	<LI>
	  Add protections in the afm file output to handle very long copyright notices.
      </UL>
    <LI>
      08-Feb-2003
      <UL>
	<LI>
	  Support for Apple's 'opbd' (Optical Bounds) table
	<LI>
	  Support for reading some features in non-contextual glyph and ligature sub-tables
	  of the 'mort' or 'morx' tables.
	<LI>
	  Support for writing those features in non-contextual glyph and ligature
	  sub-tables of 'morx'.
	<LI>
	  added char info to the fontview popup.
	<LI>
	  the scripting command Generate (and GenerateFamily) would generate truetype
	  .dfont files when asked to generate otf dfont files.
	<LI>
	  Add ClearHints scripting command
	<LI>
	  Add access to preference items from scripting (via: $&lt;prefname&gt;,
	  GetPref("&lt;prefname&gt;"),
	  SetPref("&lt;prefname&gt;",&lt;value&gt;)
      </UL>
    <LI>
      01-Feb-2003
      <UL>
	<LI>
	  Add some support for Apple Advanced Typography tables ('prop', 'lcar')
	<LI>
	  Popup menus in textfields failed to refresh the text field
	<LI>
	  KANOU provides a patch for sfd files with long Alternate Subs
	<LI>
	  FontView didn't deselect properly after doing a drag and drop.
	<LI>
	  Should now deal with the case where (under cygwin) the user sets BROWSER
	  to 'netscape' with no path spec.
	<LI>
	  Ligature carets introduced a crash bug.
      </UL>
    <LI>
      30-Jan-2003
      <UL>
	<LI>
	  Should figure out the default windows browser under cygwin now.
	<LI>
	  Should handle the case where a user sets the BROWSER variable to something
	  with a DOS pathspec
	<LI>
	  Apply KANOU's patch to turn off more autohinting.
      </UL>
    <LI>
      29-Jan-2003
      <UL>
	<LI>
	  Fix a crash introduced yesterday.
	<LI>
	  scripting didn't work for $familyname fix from Alex Raftis
      </UL>
    <LI>
      28-Jan-2003
      <UL>
	<LI>
	  The title of the Anchor Pair dialog was wrong (said Kern Pairs)
	<LI>
	  Improved error messages for when a font file did not exist or was unreadable.
	<LI>
	  Failed to generate a GSUB table when the ligatures came from a r2l ttf file.
	<LI>
	  I was generating incorrect data for r2l GPOS kerning sub-tables.
	<LI>
	  Failed to display r2l anchored attachments properly in the metricsview, anchor
	  pair dlg, or when printing.
	<LI>
	  Typo when loading libuninameslist dynamic library, introduced on the 24th.
	<LI>
	  Now we generate a GDEF table too, containing (possibly) a glyph class def
	  and (possibly) a ligature caret list
	<LI>
	  Added code for editing horizontal ligature caret locations
      </UL>
    <LI>
      25-Jan-2003
      <UL>
	<LI>
	  More cygwin fixes for invoking browsers.
      </UL>
    <LI>
      24-Jan-2003
      <UL>
	<LI>
	  Added a preference item to control whether autohinting happens before a font
	  is generated.
	<LI>
	  When calling Internet Explorer or Netscape on cygwin we needed double backslashes
	<LI>
	  moved hidden menu items (those invoked by Shift) into submenus
      </UL>
    <LI>
      20-Jan-2003
      <UL>
	<LI>
	  Put in a number of errors and warnings related to a glyph not having a script.
	<LI>
	  Fixed a crash bug when generating a popup for a glyph with no unicode encoding
	<LI>
	  Support for scroll wheels.
	<LI>
	  I hope I've now fixed the problems related to the GSUB table and ttc files.
	  Now does a pass through the GSUB table to see what glyphs can be introduced
	  by it when it figures out what glyphs to read from the glyph table (ttc files
	  have more than one font sharing the table, don't want to read all glyphs).
	<LI>
	  Added support for extension subtables of GPOS/GSUB.
	<LI>
	  Making a selection in the textfield of the Display dlg was broken when the
	  selection was scrolled.
	<LI>
	  Valek wants a Paste Into command.
	<LI>
	  Uninitialized variable in GSUB output caused erratic ligature behavior
	<LI>
	  I'm told that even though it makes logical sense for hebrew to have a 'fina'
	  tag, it is not customary and I have been asked to remove it from Default
	  ATT. Which I have done. 
	    <HR>
	<LI>
	  FontForge now protects itself better against erroneous GSUB/GPOS tables.
	<LI>
	  Valek points out there were display problems with the File-&gt;Display (and
	  File-&gt;Print) menu options in Russian.
      </UL>
    <LI>
      16-Jan-2003
      <UL>
	<LI>
	  Recent char info changes broke copy &amp; paste within text fields of the
	  char info dlg.
	<LI>
	  Problems reading GSUB table of a ttc files (problems remain, but we should
	  no longer crash).
	<LI>
	  Reorganized libraries. Now FontForge has an additional dependency:<BR>
	  <A HREF="http://libuninameslist.sf.net">libuninameslist</A>. Please install
	  this.
	<LI>
	  With libuninameslist FontForge can display the Unicode annotation information.
      </UL>
    <LI>
      14-Jan-2003
      <UL>
	<LI>
	  Fixed a couple of bugs loading pcf files with complex encodings
	<LI>
	  Bug in pasting metadata when there was no glyph comment.
	<LI>
	  Made SetCharColor scripting command set the color on any selected glyphs
	<LI>
	  Cleaned up selection behavior in fontview. Drag &amp; drop made it difficult
	<LI>
	  Oops. Was scaling round rect radius incorrectly in xfig conversion
	<LI>
	  Oh yes, hebrew has final letters too. And greek. Add them in to the default
	  for 'fina'.
	<LI>
	  Fixed many problems with mac font generation
	<LI>
	  Open VMS update from Jauk Jansen
      </UL>
    <LI>
      12-Jan-2003
      <UL>
	<LI>
	  Support for xkb extension
	<LI>
	  New Russian UI from Valek
	<LI>
	  New Japanese UI from KANOU 
	    <HR>
	<LI>
	  Saving a compacted font did not preserve the old encoding
	<LI>
	  Added a preference item to control Edit-&gt;Join
	<LI>
	  made Edit-&gt;Copy From-&gt;Copy Name (now Metadata) be a preference item
	  too.
      </UL>
    <LI>
      9-Jan-2003
      <UL>
	<LI>
	  Support for round rects in xfig files
	<LI>
	  Added the glyph name to the title of the char info dlg
	<LI>
	  Char info failed to deal with all the flags properly
	<LI>
	  Fixed crash when creating GPOS sub-table 1 (simple positioning)
	<LI>
	  GPOS/GSUB output now handles case where a feature has several different sets
	  of flags.
      </UL>
    <LI>
      8-Jan-2003
      <UL>
	<LI>
	  Update copyright notices
	<LI>
	  Printing now handles anchored marks. (Display does not, just as display doesn't
	  handle kerning-- because X doesn't).
	<LI>
	  Support for cursive positioning.
	<LI>
	  I've registered with Adobe, and they have assigned FontForge an XUID base
	  number of 1021. Now when new users start fontforge for the first time they
	  will be assigned an XUID base sequence of 1021 xxx nnn where xxx and nnn
	  are two random numbers generated by fontforge. New fonts will get a fourth
	  number for their full XUID.
	<LI>
	  Kanou points out that glyph names should not contain underscores so redo
	  the .cidmap files to change to dashes. Also change "japan1_%d" to "cid-%d"
	  to make life easier for me.
	<LI>
	  KANOU points out there were places where fontforge did not check
	  psunicodenames_cnt. Once outside of BMP this causes a crash.
	<LI>
	  New Japanese UI from KANOU.
	<LI>
	  Support for many more GPOS/GSUB sub-tables.
	<LI>
	  Keep track of the order in which characters are selected in the fontview
	  and recreate that order when user asks to create a metricsview based on the
	  fontview's selection
	<LI>
	  Make it possible to drag&amp;drop characters from fontview into metricsview
	  (again keeping track of selection order)
	<LI>
	  Make it possible to drag&amp;drop characters from fontview into charview
	  to create references
	<LI>
	  Make it possible to drag&amp;drop characters from fontview into charinfo
	  to create ligatures, etc.
	<LI>
	  Command to set the default values for sub GSUB/GPOS features that are easy
	  for FontForge to figure out.
	<LI>
	  Ability to zoom metrics view.
	<LI>
	  Metrics view displays anchor points and does the needed work to position
	  the characters. It is also possible to move anchor points around in the metrics
	  view.
	<LI>
	  Metrics view now has a pop-up menu that allows you to see alternate metrics
	<LI>
	  Metrics view now has a submenu (off of View) which allows you to change the
	  current glyph to one of its alternates.
	<LI>
	  Fixed uninitialized variable what would sometimes cause a crash when storing
	  bitmaps in a TTF/OTF file.
	<LI>
	  Fixed crash bug in 29-Dec when generating a truetype font without a GPOS
	  table.
	<LI>
	  Many changes to charinfo dlg. Made non-modal. Can Copy/Paste
	  Position/Substitution data.
	<LI>
	  Do a minimal amount of work toward supporting the alpha channel of a png
	  file.
      </UL>
    <LI>
      29-Dec-2002
      <UL>
	<LI>
	  FontForge now supports <A HREF="overview.html#Anchors">anchor points</A>
	  for mark to base (ligature and mark) positioning.
	<LI>
	  FontForge was mistakenly treating NumLock on PC keyboards as if it were the
	  command key on Mac keyboards.
	<LI>
	  The font info dlg now remembers what tab was last pressed.
	<LI>
	  The char info dlg has been restructured. It includes a script field, and
	  associates a tag with the ligature (if any).
	<LI>
	  I have decided to generate a 'GPOS' table rather than a 'kern' table in truetype
	  output as well as in opentype output (unless applemode is set).
	<LI>
	  I have changed the default names of items in adobe's private use area to
	  match their new conventions. ie. names used to look like "Asmall" and now
	  look like "a.sc".
	<LI>
	  I have rewritten the way <A HREF="gposgsub.html">GPOS and GSUB</A> tables
	  are output. I hope this will not have much effect on users, but it does mean
	  that a few more sub-tables are now supported.
      </UL>
    <LI>
      23-Dec-2002
      <UL>
	<LI>
	  Various improvements to cubic-&gt;quadratic (truetype) conversion.
	<LI>
	  When switching from displaying a 12,8,6,4,3,2,1pt bitmap to a 24pt anti-aliased
	  version, fontforge would fail to update the display.
	<LI>
	  The bitmap dlg would come up with the labels for X showing when it should
	  have shown those for Win/Mac.
	<LI>
	  Inspired by KANOU's mentioning the mona font, I've made it possible to generate
	  an ms bitmap only ttf font. This is done by creating dummy glyph and loca
	  tables (full of space glyphs) and putting a bitmap scaling table which causes
	  the most likely pixelsizes to be scaled from the strikes available.
	  <P>
	  You can generate this with: [No Outline Font] [In TTF]
	<LI>
	  Drat. Fix of 24-Nov was wrong. I still wasn't putting the UniqueID into the
	  Private dict.
	<LI>
	  I've been generating bad macbinary files since I started
	  <UL>
	    <LI>
	      I had not noticed that the resource and data fork must be padded to a multiple
	      of 128 bytes.
	      <UL>
		<LI>
		  This also meant that on rare occasions I would read them incorrectly too.
	      </UL>
	    <LI>
	      I was generating the crc incorrectly.
	  </UL>
	<LI>
	  Be a bit more vigorous about displaying filter text in file choosers.
	<LI>
	  Default buttons didn't respond to the keypad enter key.
	<LI>
	  Pressing OK in the character info dlg would often destroy the font's encoding
	  event when it should not have.
	<LI>
	  Was generating bad kerning tables for mac FONDs.
	<LI>
	  Jim Killock reminds me that there was no way for fontforge to read kerning
	  data from a mac FOND. File-&gt;Merge Kern Data will now accept a mac resource
	  file.
      </UL>
    <LI>
      15-Dec-2002
      <UL>
	<LI>
	  Add support for Big5HKSCS
	<LI>
	  Redo CJK encodings
	<LI>
	  Update cidmap files.
      </UL>
    <LI>
      14-Dec-2002
      <UL>
	<LI>
	  Add support for reading windows .FON and .FNT files.
	<LI>
	  Add support for writing windows .FNT files. Sadly .FNT files aren't particularly
	  useful. They need to be converted to .FON files with the resource editor
	  somehow.
	<LI>
	  Bug when reading postscript files that included complicated combinations
	  of translate scale and concat commands.
	<LI>
	  FontForge was a bit too cavalier about guessing how big serifs were. Caused
	  problems when autokerning a fraktur font. (FontForge thought it had huge
	  serifs when it had none).
	<LI>
	  Direction (Clockwise, counterclockwise, correct) menu items are now greyed
	  out if the selected path is open.
	<LI>
	  New OpenVms patches from Jacob Jansen.
	<LI>
	  Update unicode database to 3.2
      </UL>
    <LI>
      13-Dec-2002
      <UL>
	<LI>
	  FontForge will now open a ttf/otf font that contains only bitmap strikes
	<LI>
	  FontForge will now read NFNT resources (old mac bitmaps)
	<LI>
	  FontForge will import NFNT resources
	<LI>
	  Fixed a number of problems with loading and saving bdf files
	  <UL>
	    <LI>
	      Did not understand that the "ENCODING" keyword could take two values if the
	      first were -1
	    <LI>
	      Added unencoded glyphs at the wrong encoding (I know that sounds like an
	      oxymoron. I assign them an encoding, and I did it badly).
	    <LI>
	      If a font name were not one of the X Logical Font Names then fontforge might
	      fail to give the font a familyname or a fontname. This caused more problems
	      when generating a new bdf file.
	  </UL>
      </UL>
    <LI>
      11-Dec-2002
      <UL>
	<LI>
	  Revert Glyph is now undoable
	<LI>
	  Fixed a crash when pressing return in the font display of a bitmap font.
	<LI>
	  Display the name of references near the top of the reference in the outline
	  char view.
	<LI>
	  Took the width display off the info line and did it as hints are displayed.
	<LI>
	  Menus now respond to Home and End key events.
	<LI>
	  I have changed the calling conventions for the ExpandStroke scripting command
	  to reflect the height ratio value that is now needed.
	<LI>
	  Holding down the Alt (Meta) key when using the freehand tool will now close
	  the path.
	<LI>
	  The Generate Fonts dlg will now display an appropriate bitmap fontname if
	  "No Outline Font" is selected.
	<LI>
	  I think I've got the wacom stuff working now. FreeHand tool now takes options.
      </UL>
    <LI>
      08-Dec-2002
      <UL>
	<LI>
	  Oops. Can't use Alt-Shift for menus (it's treated as a mnemonic) use
	  Alt-Ctl-Shift instead.
	<LI>
	  Reorganized the prefs dlg.
	<LI>
	  Made FontInfo non-modal.
	<LI>
	  Added a default icon for all fontforge's windows &amp; dlgs.
      </UL>
    <LI>
      06-Dec-2002
      <UL>
	<LI>
	  Fixed a problem where FontForge still picked bad fonts sometimes.
	<LI>
	  Typo in format spec for character windows
	<LI>
	  At Werner's suggestion:
	  <UL>
	    <LI>
	      The Transform dlg now preserves hints in the undo
	    <LI>
	      Added an indication of which layer was active
	    <LI>
	      Added an indication on the title bar that a character was changed
	    <LI>
	      Added a Revert Glyph command
	    <LI>
	      The location of the advance width pops up on the info line when the cursor
	      moves over the advance width
	    <LI>
	      changed the Set Width command to get the right default value.
	    <LI>
	      There were some layout problems in the char info dlg.
	  </UL>
	<LI>
	  Redid the configuration for mac os/x. I've just upgraded to the new developers'
	  tools and that fixed a lot of problems.
      </UL>
    <LI>
      05-Dec-2002
      <UL>
	<LI>
	  Fixed a crash in menus, if the cursor was moved from a submenu (a cascaded
	  menu) to the menubar without passing through the main menu then a crash would
	  happen.
	<LI>
	  Clicking in a menu above the first line will dismiss the menu.
	<LI>
	  Fixed a crash when generating postscript fonts.
	<LI>
	  Oops. Bug in work of 2-Dec. The character named "u" was treated as uXXXX
	  and given unicode U+0000 rather than U+0075.
	<LI>
	  It is now possible to switch between editing layers in the outline character
	  view by using the mnemonics displayed in the layers palette (even if the
	  layers palette is hidden).
	  <P>
	  Or by using the popup menu invoked by the third mouse button.
	<LI>
	  Rewrote Expand Stroke so that the calligraphic pen is no longer treated as
	  a line (it is now treated as a rectangle).
	<LI>
	  Changed behavior of Next/Prev char so that they do not wrap in the outline
	  character view. Also added the encoding to the title.
	<LI>
	  In the outline view made a separate menu entry for Char Info and removed
	  it from "Get Info". Made Ctl-Shft-I invoke Char Info in all views (Ctl-I
	  will also invoke it everywhere but the outline view).
	<LI>
	  Undo will now attempt to reset the modified bit on a character. It will not
	  attempt to reset the modified bit on the font as a whole (there are too many
	  things that can change without setting undo info).
      </UL>
    <LI>
      2-Dec-2002
      <UL>
	<LI>
	  If the fontview were only one line high FontForge would not scroll to the
	  selected character properly.
	<LI>
	  Adobe has released a new version of their glyph naming conventions. In particular
	  they provide names for code points outside of the bmp. Danilo Sagan points
	  out that they also allow for alternate glyph names. (specified in the
	  <A HREF="http://partners.adobe.com/asn/tech/type/otfdk/">FDK</A>).
	<LI>
	  Remove the PFAEDIT_PI1 environment variable.
	<LI>
	  Cut and Paste bug fixed when clearing metadata.
      </UL>
    <LI>
      25-Nov-2002
      <UL>
	<LI>
	  Harald Harders provides a patch to allow SetItalicAngle to deal with real
	  numbers.
	<LI>
	  Vadim Belman provides a patch to keep Element-&gt;MetaFont from crashing
	  when applied to spaces.
	<LI>
	  Bringing up the preference dlg would segfault if there were arguments specified
	  for autotrace.
	<LI>
	  Put in a hack so that the environment variable PFAEDIT_PI1 controls whether
	  U+03D6 is named "pi1" (as Unicode suggests it ought to be) or "omega1" (as
	  Adobe has said it should be).
	<LI>
	  Follow riggle's suggestion and use the shell command "open" (on a Mac) to
	  bring up a browser window.
      </UL>
    <LI>
      24-Nov-2002
      <UL>
	<LI>
	  Harald Harders points out that UniqueID needs to be in both the font and
	  the Private dictionaries in a PostScript font.
	<LI>
	  And provides access to UniqueID from the scripting language.
	<LI>
	  More fixes for TeX sfd files.
      </UL>
    <LI>
      20-Nov-2002
      <UL>
	<LI>
	  Changed the Simplify More command to bring up a dlg giving the user control
	  over what errors Simplify More is allowed to induce.
	<LI>
	  Bug in import image with non-latin1 fontnames
	<LI>
	  New Russian ui translation
	<LI>
	  Merge fonts didn't work well with CID keyed fonts
	<LI>
	  Fixed yet another problem with notdef generation.
	<LI>
	  Fixed yet crash in sfddiff.
	<LI>
	  Using Font Info to convert to SJIS didn't work.
	<LI>
	  Merge fonts had problems when both fonts were CID keyed.
	<LI>
	  Generate a unicode encoding subtable even when generating a CJK encoding
	  subtable.
	<LI>
	  Added a preference item to allow user to specify whether s/he would rather
	  read in the unicode or the cjk encoding subtable.
      </UL>
    <LI>
      13-Nov-2002
      <UL>
	<LI>
	  Two new tools in the outline character view.
	  <UL>
	    <LI>
	      A hand tool -- for scrolling around
	    <LI>
	      A freehand tool -- for having fontforge try to fit splines to a hand drawn
	      curve
	  </UL>
	<LI>
	  MergeFonts was broken from scripts.
	<LI>
	  New Russian UI from Valek.
	<LI>
	  Another remove overlap fix from KANOU.
	<LI>
	  Added code to invoke Internet Explorer (or an Mac App) on the Mac (so pressing
	  F1 should actually load some help on the mac now).
	<LI>
	  Fixed random crash in font generation dialog
	<LI>
	  PS-&gt;TTF conversion tried to force splines in cases where it could not.
      </UL>
    <LI>
      05-Nov-2002
      <UL>
	<LI>
	  Improved behavior of Remove Overlap. Fix inspired by Kanou.
	<LI>
	  Added a "Find Intersections" command, a variant of remove overlap that stops
	  after it finds the intersections. I think this half of the job has no major
	  bugs.
	<LI>
	  If a single point is in the clipboard, then FontForge will also export the
	  clipboard as STRING, giving the coordinates of the point. This is to make
	  it easier to refer to the point.
      </UL>
    <LI>
      04-Nov-2002
      <UL>
	<LI>
	  KDE has the lovely habit of losing some resize events when in continuous
	  resize mode. So I've tweaked the fontview resize code so that it is less
	  dependent on individual events.
	<LI>
	  Added a mode where the user can choose between whether the font shown in
	  the fontview should be scaled so that the em fits in the space provided (this
	  is the old behavior) or so that the bounding box does.
	<LI>
	  Rewrote the knife tool so that it cuts at the end rather than as it goes
	  along. I think this is easier to use.
	<LI>
	  Bug in the generation of format=2 truetype encoding tables (used for CJK
	  fonts).
      </UL>
    <LI>
      02-Nov-2002
      <UL>
	<LI>
	  Png reading failed on greyscale images with an alpha channel
	<LI>
	  Png now reads mono images as mono.
	<LI>
	  make install (via libtool) didn't work if "." weren't in the PATH.
      </UL>
    <LI>
      30-Oct-2002
      <UL>
	<LI>
	  GenerateFamily() scripting command had a number of problems.
      </UL>
    <LI>
      26-Oct-2002
      <UL>
	<LI>
	  The "Apple" checkbox was sometimes (incorrectly) invisible in the Generate
	  Font/Family dialogs
	<LI>
	  Minor improvements to the "Insert Character" dialog (to match
	  <A HREF="http://umap.sf.net/">umap</A>)
	<LI>
	  Minor tweak to text fields
	<LI>
	  More configuration changes
      </UL>
    <LI>
      25-Oct-2002
      <UL>
	<LI>
	  Problems when reading an sfd with references to cleaned up characters.
	<LI>
	  Removed code from ttf generation that check for points of inflection (but
	  fixed a couple of bugs in it before doing that).
	<LI>
	  Change the way scripting GenerateFamily behaves. One person has already been
	  unable to figure out how to use it, and I agree that it didn't make much
	  sense the way I had it.
      </UL>
    <LI>
      24-Oct-2002
      <UL>
	<LI>
	  Change the default configuration process to use dynamic libaries
	  <UL>
	    <LI>
	      Added "configure.static" which will configure for static libaries (On Mac
	      OS/X the compiler gets internal compiler errors if asked to generate pic
	      code)
	  </UL>
	<LI>
	  Enable reading a straight ttf file out of a .bin or .hqx wrapper (ie. doesn't
	  need to be in a resource fork)
	<LI>
	  The Kern Pairs dlg did not show Hebrew/Arabic right to left. Fixed
	<LI>
	  Added a popup menu to Kern Pairs which will allow you to reset a kern pair
	<LI>
	  Added a way to configure the font family used for info messages in the outline
	  and bitmap character views.
	<LI>
	  New man pages which use the macros supported by Sun. Thanks to R. P. Channing
	  Rodgers.
      </UL>
    <LI>
      22-Oct-2002
      <UL>
	<LI>
	  Initial version of Mac Family (FOND) generation
	<LI>
	  Fix old sfds so that their bad pngs will become bitmaps
	<LI>
	  optimize the fix to draw magnified.
      </UL>
    <LI>
      21-Oct-2002
      <UL>
	<LI>
	  Verbose addition to scripting broke loops
	<LI>
	  Various changes to make utf8/ucs2 selections work properly with other programs
	<LI>
	  Hebrew/Arabic drag and drop could cause crashes
	<LI>
	  The Increment right side bearing command (Metrics-&gt;Set RBearing) set the
	  width to the value rather than incrementing by that value.
	<LI>
	  Fixes for the local encoding being utf8
	<LI>
	  Imported bitmap pngs still were seen as indexed
	<LI>
	  Problems drawing magnified images when the scale factor was 100%
      </UL>
    <LI>
      20-Oct-2002
      <UL>
	<LI>
	  Updated French and Japanese UI translations
	<LI>
	  Use LC_CTYPE (rather than LC_MESSAGES) to determine the current local encoding
	<LI>
	  If the width line were selected then FontForge would sometimes snap cursor
	  movements to an arbitrary x-value (often the axis)
	<LI>
	  KANOU provided a patch which fixes some remove overlap problems.
	<LI>
	  I had broken the generation of pure bitmap sfnts from scripts (7-Sept)
	<LI>
	  Added a verbose mode to scripts (prints script to stdout as it is executed).
      </UL>
    <LI>
      18-Oct-2002
      <UL>
	<LI>
	  Tweaked metrics view so that null kerning now displays as an empty string
	  rather than "0"
	<LI>
	  If a font contained a kerning pair to a character that was omitted when saving
	  the sfd file, then loading that font would leave it in a bad state and eventually
	  cause a crash. Fixed on both ends (don't generate bad sfds any more, and
	  can deal with them properly when found)
	<LI>
	  Improved the "Insert Character" dialog a bit.
      </UL>
    <LI>
      17-Oct-2002
      <UL>
	<LI>
	  More work on Ik format files
	<LI>
	  Redid UI for Auto Width/Kern to make it easier for cyrillic/greek users to
	  kern their alphabets.
	<LI>
	  Changed so that CJK encodings will attempt to map directly to a CJK font
	  (rather than going through unicode) when displaying in the fontview.
	<LI>
	  Added a command to join paths
	<LI>
	  KANOU points out that support for mimetype cut/paste (11-Sept) broke cut/paste
	  in scripting.
	<LI>
	  KANOU supplied a patch for the knife tool.
	<LI>
	  KANOU points out that IsVisible didn't work properly if passed a NULL point
	  (it should never be passed a NULL pointer, but if it is no reason not to
	  work correctly).
	<LI>
	  KANOU points out that the UniqueID for ttf files used a bad date.
	<LI>
	  Had the wrong MS language ID for hungarian
	<LI>
	  Some of Luc Devroye's fonts contain a "div" in the FontMatrix. ATM doesn't
	  support this, but it is easy enough to accept. Still don't support a full
	  expression there, just a div.
	<LI>
	  If we read in a gsf font and then generated postscript from that, we weren't
	  able to read in the result.
	<LI>
	  Added an empty glyph-encoding sub-table to mac FONDs
	<LI>
	  Save multiple postscript did not save the first sub-font
	<LI>
	  The second count in BeginChars could be wrong in an sfd file (FontForge doesn't
	  care, but I suppose some program might).
	<LI>
	  Add support for local encoding being UTF-8. Prefs now has an option to try
	  and figure out the encoding from the locale
	<LI>
	  Display filenames in the local encoding.
	<LI>
	  There was an erroneous test in simplify which caused FontForge to complain
	  about an internal error when in truth all was well.
	<LI>
	  There was a bad test in dumpbdf
	<LI>
	  Export will now allow the user to generate png files (if s/he's got the png
	  libraries)
	<LI>
	  It is possible to invoke Export from a script
      </UL>
    <LI>
      11-Sept-2002
      <UL>
	<LI>
	  Added a menu in textfields (right mouse button)
	<LI>
	  Added support for STRING_UTF8 selections
	<LI>
	  Added support for "image/png", "image/bmp", "image/eps",
	  "text/plain;charset=ISO-10646-UCS-2", "text/plain;charset=UTF-8"
	  <UL>
	    <LI>
	      (two image format)
	    <LI>
	      (one format for reading spline data)
	    <LI>
	      (two more ways of expressing unicode text data)
	  </UL>
      </UL>
    <LI>
      10-Sept-2002
      <UL>
	<LI>
	  Added support for UTF8 in display/print dlg imports.
      </UL>
    <LI>
      9-Sept-2002
      <UL>
	<LI>
	  Added support for loading Ikarus .IK font files
	<LI>
	  Fixed a divide by zero problem when generating ttfs
	<LI>
	  If you type into the Kern Pairs dlg, it will now scroll to the pairs associated
	  with the character you typed.
      </UL>
    <LI>
      8-Sept-2002
      <UL>
	<LI>
	  Display crashed on systems without freetype
	<LI>
	  my xfig reader didn't handle arcs
	<LI>
	  Merge fonts and Interpolate fonts didn't merge/interpolate kerning pairs
      </UL>
    <LI>
      7-Sept-2002
      <UL>
	<LI>
	  The ruler tool will give the length of a spline if applied between the spline's
	  endpoints
	<LI>
	  Made FontForge a little smarter about when to change the xuid field.
	  <!--
	  <LI>
	  Added the tile path command.
	  -->
	<LI>
	  Added a dlg to <A HREF="display.html">display fonts </A>using freetype.
	<LI>
	  Added support for the obsolete _XFREE86_GLYPH_RANGES property and then turned
	  it off by default.
	<LI>
	  Improvements to type2 output.
	<LI>
	  Changed greek accents to use 0x384 rather than 0x30d when substituting for
	  0x301
	<LI>
	  I've found another case where Apple and MS/Adobe disagree on the format of
	  ttf/otf files. So there's now a check box in the Generate dlg which allows
	  you to select between the two defns. I've removed the two different kinds
	  of bitmaps for ttf files, these are now controlled by this new checkbox too.
	<LI>
	  FontForge would sometimes in otf files generate curves which should have
	  been done as lines.
	<LI>
	  macbinary resource output broke when I fixed straight resource output the
	  other day.
	<LI>
	  When a grid line was a line but expressed with control points, then fontforge
	  would get very confused about how to snap to it.
	<LI>
	  Fixed a bug in the generation of ttf/otf fonts with big5/sjis/wansung encodings.
	<LI>
	  The ligature dlg had a bad habit of crashing.
	<LI>
	  On the Mac, Obliqued fonts are stored in a weird postscript format. Try to
	  support them
      </UL>
    <LI>
      2-Sept-2002
      <UL>
	<LI>
	  When in no-x mode, fontforge did not notice any arguments (except -script).
	  It will now notice -version, -usage and -help.
	<LI>
	  The PS Names check box would be visible when generating otf fonts. It should
	  not have been.
	<LI>
	  If a font contained multiple encodings for the same character, then generating
	  an otf font from it would crash fontforge.
	<LI>
	  There is now a proper french translation of the ui (Merci Pierre Hanser!)
	<LI>
	  Under cygwin, FontForge would fail to find internet explorer/netscape (because
	  not in user's path) and if it did find them would try to invoke them with
	  a cygwin style name (ie. /usr/local/share/doc/fontforge/overview.html rather
	  than c:\cygwin\usr/local/share/doc/fontforge/overview.html )
	<LI>
	  Added a preference item to allow you to control whether a mapping file from
	  glyph ids to character names is produced along with ttf and otf fonts.
      </UL>
    <LI>
      1-Sept-2002
      <UL>
	<LI>
	  Added an #ifdef to an include file to make it work when built without X11
      </UL>
    <LI>
      31-August-2002
      <UL>
	<LI>
	  Making a font be a cid-keyed font might screw up all other fontviews and
	  lead to crashes.
	<LI>
	  type1 cid keyed fonts got the wrong fontmatrix if the em-size was something
	  other than 1000. Doesn't seem to make a difference though, we still get bad
	  output for emsize!=1000
	<LI>
	  got maxp.numGlyphs wrong for otf cid-keyed fonts which lacked a .notdef character
	<LI>
	  Added a check to make sure fontnames are less than 63 characters. Needed
	  for ATM.
	<LI>
	  format 2 Coverage tables (used by GPOS and GSUB tables (kerning &amp; ligatures
	  for otf)) were being generated incorrectly. This meant that windows would
	  refuse to read my otf files which had complex kerning. (presumably complex
	  ligs, but I had no test cases). The mac printer driver has also had problems
	  with my otf files. This may be why.
	<LI>
	  Added a popup to the kern pair dlg to tell user how many kern pairs there
	  are, and how many characters start kern pairs.
      </UL>
    <LI>
      29-August-2002
      <UL>
	<LI>
	  Merge and Elide were backwards
	  <UL>
	    <LI>
	      And merge (simplify) had problems when a desired spline at the same slope
	      at the start and end (or something like that).
	  </UL>
	<LI>
	  Added a field to Review Hints showing the total number of hints, flag for
	  h/vstem3, ability to move points associated with hint when moving hint. also
	  added a hot key for it.
	<LI>
	  Added a Find Problem to detect things which are almost but not quite h/vstem3
	<LI>
	  AutoHint wasn't finding all the ghost hints it should have.
	<LI>
	  Put in (what I hope is) a better way of detecting extraneous hints (the hypen
	  case. At first sight the hstem and vstem appear equally valid) remove hints
	  which are wider than they are long.
	<LI>
	  More fixes from KANOU for cid fonts
	<LI>
	  The scale to em checkbox only (sort of) worked if the emsize increased. Fix
	  from KANOU
	<LI>
	  Autohint could go into an infinite loop on characters containing a 0-length
	  spline.
	<LI>
	  Problem with cff name table fix of 27-Aug
	<LI>
	  bdf fonts were loaded into background by default
	<LI>
	  Scripting problem loading bitmap fonts into background.
      </UL>
    <LI>
      27-August-2002
      <UL>
	<LI>
	  Further attempts to fix the fact that FontForge in some ways does not believe
	  that monospaced ttf files are monospaced.
	<LI>
	  Problems with endif
	<LI>
	  Redid the Find Problems dialog by adding tabs so that related problems are
	  grouped together.
	<LI>
	  Added a problem which will report advance widths which do not match some
	  standard value.
	<LI>
	  CID keyed generation was broken again by the (failed) attempt to make things
	  work with FontLab (18-Aug)
	<LI>
	  cff name table could be off by 1 if there were a real notdef character
	<LI>
	  Added ability to display blue zones in outline view.
      </UL>
    <LI>
      21-August-2002
      <UL>
	<LI>
	  Broke cid-keyed otf generation on 27 July when I enabled the [Stop] button.
	  Fix by KANOU.
	<LI>
	  Bringing up progress indicator early (20 August) broke scripting without
	  X11.
	<LI>
	  Added ability to load a font protected by fstype=2 to a scripting (extra
	  argument to open).
	<LI>
	  Enhanced print abilities.
	<LI>
	  Added ability to Print to scripting.
	<LI>
	  Attempt to fix the fact that windows doesn't recognize my monospaced ttf
	  fonts as monospace.
	<LI>
	  FontForge could be confused by strange values of Ascent in the hhea table
	<LI>
	  Added a Round to Int option to the transform dialogs
	<LI>
	  Added ability to change the em-size (and rescale the font) to fontinfo
      </UL>
    <LI>
      20-August-2002
      <UL>
	<LI>
	  Under KDE my tools palettes are made too wide and without borders. That's
	  ok until they get reparented (docked). Added code in the docking routines
	  to fix these problems.
	<LI>
	  May have fixed a race condition problem due to reparented windows under freebsd.
	<LI>
	  TeX sfd files are a little more complicated than I had originally thought,
	  the parser is now more general.
	<LI>
	  FontForge sometimes thought some X fonts had iso8859-1 encoding when they
	  did not.
	<LI>
	  cleaned up some problems with encodings
	<LI>
	  Added support for TeX (actually MetaFont) gf files
	<LI>
	  RLE background images sometimes showed up inverted (with background color
	  as foreground &amp; vice versa)
	<LI>
	  The Fit in window command should now take docked palettes into consideration.
	<LI>
	  Added a Japanese translation of the UI, courtesy of KANOU Hiroki.
	<LI>
	  Added the ability to run <CODE>mf</CODE> on a .mf font, generate a gf file,
	  autotrace the gf file, and leave you with a font based on an mf file.
	<LI>
	  Menus now do pointer grabs.
	<LI>
	  Fixed a bug in generating PostScript resource file fonts on Mac OS/X
      </UL>
    <LI>
      18-August-2002
      <UL>
	<LI>
	  Added a dlg to show all kern pairs (and another to show all ligatures)
	<LI>
	  Added a "Find Problems" item to check for missing bitmaps.
	<LI>
	  Put in some warnings to the ttf parser for bad cmap and glyf tables
	<LI>
	  FontForge was still having trouble about loading space bitmaps (that had
	  been generated with freetype).
	<LI>
	  FontForge did not set the flag indicating manual hinting after changes by
	  Review Hints or Create Hint. Should be set now.
	<LI>
	  Various small tweaks to the pfa/pfb output because FontLab doesn't like what
	  we currently do. Probably none will make much difference.
	<LI>
	  The Print command would attempt to print characters outside the encoding
	  of type1 fonts. This did not work well.
	<LI>
	  The autowidth command got very confused when given a sans-serif script to
	  autowidth when the Latin characters in the font were serifed.
	<LI>
	  The Print sample text is now ordered so that the language specified in the
	  LANG environment variable comes first in the list.
	<LI>
	  Added $version
	<LI>
	  FontForge will now read scripts from stdin if you follow the "-script" argument
	  with "-".
	<LI>
	  Valek points out the using CharInfo to change a character's color did not
	  change it until the fontview was refreshed
	<LI>
	  Expand Stroke had problems when intersections bent the wrong way.
      </UL>
    <LI>
      9-August-2002
      <UL>
	<LI>
	  I've decided to encourage use of the <A HREF="index.html#Mail">mailing
	  lists</A> for reporting bugs. A feeble attempt to cut down on the spam I
	  get by removing my e-mail address from the site.
	<LI>
	  Bug in the dlg asking for the resolution of a bdf font. The second (and
	  subsequent) time(s) it came up it would have a good chance of never going
	  away again, and potentially crashing FontForge into the bargain. (number
	  of other bugs here too)
	<LI>
	  If the postscript "FontName" contained a hyphen then any generated BDF fonts
	  would have invalid X fontnames (they hyphen would be included which would
	  throw the name parsing off by one hyphen).
	<LI>
	  Greg Ford points out that generating a bdf font and then loading it back
	  in will often change the fontname. This is because the fontname is not actually
	  stored in bdf files. I've added a FONT_NAME property to the bdf fonts I generate.
	<LI>
	  FontForge would sometimes forget about the first bitmap character in each
	  bitmap font stored in an sfd file. <FONT COLOR="Red"><STRONG><BIG>Please
	  check any sfd files to see if they are missing bitmaps of space, exclamation
	  point, etc. </BIG></STRONG></FONT>Probably introduced 11-June.
      </UL>
    <LI>
      8-Aug-2002
      <UL>
	<LI>
	  After yesterday's fix textfields ignored backspaces
	<LI>
	  More work on the metrics lines. There's now a dlg to control which ones get
	  drawn.
	<LI>
	  FontInfo would sometimes crash after adding ttf names.
	<LI>
	  Added minimal ability to dock palettes into their respective views.
	<LI>
	  Added a way of looking at the fontview where there are now holes in the font
	  (ie. a compacted view where every cell contains a glyph). This is just another
	  encoding, but people have been asking for it and it is slightly easier to
	  get to than normal reencoding of a font. Note: It has no defined relationship
	  to the glyph array in a ttf file.
      </UL>
    <LI>
      7-Aug-2002
      <UL>
	<LI>
	  The 21-July autowidth/kern change broke autowidth/kern scripting.
	<LI>
	  And the serif detection failed if the character I did not reach the baseline.
	<LI>
	  FontForge read RGB png files incorrectly.
	<LI>
	  FontForge used to bring up most dialogs underneath the cursor. Now it only
	  does that if the focus is set to FocusFollowsMouse, and otherwise centers
	  dlgs.
	<LI>
	  FontForge now will draw metrics lines in the fontview if you want it to.
	<LI>
	  FontForge remembers what outline character views were open when a font was
	  saved (as an sfd file) and will automagically reopen them when you next load
	  that font.
	<LI>
	  Added <CODE>View-&gt;Find In Font View</CODE> command to the outline character
	  view. Will scroll the fontview to display the current character.
	<LI>
	  Textfields within FontForge ignored the numeric keypad
      </UL>
    <LI>
      4-Aug-2002
      <UL>
	<LI>
	  Yesterday's resize fix didn't quite work
	<LI>
	  Try to improve conversion of cubic to quadratic spline (actually, we make
	  the conversion worse, but it probably helps rasterizers not to have points
	  quite so close together).
	<LI>
	  Some more work on the TTF style name
      </UL>
    <LI>
      3-Aug-2002
      <UL>
	<LI>
	  Failed to read ttf fontnames properly for some dfonts (probably some ttc
	  files as well)
	<LI>
	  Didn't position references by point matching properly (when loading from
	  ttf)
	<LI>
	  removed some debugging code inadvertently left in after the rle fix.
	<LI>
	  Added support for <A HREF="xim.html">X Input Methods</A> (to do CJK character
	  input properly)<BR>
	  This only works if X_HAVE_UTF8_STRING is defined -- an XFree 4.0.2 extension
	  (ie. not on solaris)
	<LI>
	  Added a possible fix to a resizing problem for some window managers.
	<LI>
	  Added CIDFlattenByCMap function to scripting.
      </UL>
    <LI>
      30-July-2002
      <UL>
	<LI>
	  Fixed a couple of problems found by
	  <A HREF="http://developer.kde.org/~sewardj/">valgrind</A>
	<LI>
	  Applied a patch from KANOU Hiroki. PasteInto did not work.
	<LI>
	  Added run length encoding compression to sfd files (for background images).
	  Bitmap image sizes are much smaller now.
	<LI>
	  FontForge failed to recognize that a PNG black and white image was monochrome.
	<LI>
	  Now FontForge will immediately put up the progress indicator when loading
	  the first font (so the user has something to look at)
	<LI>
	  A little more work on generate multiple.
	<LI>
	  Removed a confusing message about autohinting a font for which no autohinting
	  was actually done (it was just checking to see if it needed to).
	<LI>
	  Oops. Windows won't accept a ttf file if there is no name table entry with
	  the same platform/specific entries as those in the cmap.
	<LI>
	  If a character contained a reference to a blank character that FontForge
	  decided wasn't worth outputting, then the truetype composite for it would
	  not work.
	<LI>
	  The standard format for the ttf "version" name is different from the equivalent
	  postscript name. Added code to interconvert between the two rather than expecting
	  them to be the same.
	<LI>
	  Added a gasp table for when there was no hinting.
      </UL>
    <LI>
      28-July-2002
      <UL>
	<LI>
	  Pressing the [Filter] button on a blank field will show the current filter
	  text (holding the mouse over the [Filter] button will cause a popup to appear
	  with the same info).
	<LI>
	  If there were know selection the pressing an arrow key would presume that
	  the selection was at encoding -1, which caused strange behavior. Now we will
	  pretend that the selection is visible and halfway down the screen.
	<LI>
	  Oops. CMap files allow for multiple encodings for the same glyph. Now prepared
	  to put in refs.
	<LI>
	  Oops. Generate multiple had several problems (couldn't handle encodings above
	  0x80000000, was surprised by empty font numbers, etc.)
	<LI>
	  If a family name contained a space then only the first word in it would be
	  read out of an sfd file
      </UL>
    <LI>
      27-July-2002
      <UL>
	<LI>
	  Oops. I was calling TeX sfd files Sub Font Directories and their proper name
	  was Sub Font Definition.
	<LI>
	  Enabled the [Stop] button in the progress dlg when saving a font.
	<LI>
	  FontForge would go into an infinite loop when reading one of its sfd files
	  when it was expecting a TeX sfd file. Fixed, and put in guards so that won't
	  happen anyway.
	<LI>
	  Added two new menu commands "Flatten to CMap" and "Convert By CMap". These
	  will use one of Adobe's CMap files to guide the Flattening/Converting process
	  (rather than one of my cidmap files)
	<LI>
	  Added support for some really large encodings if they have almost equally
	  large gaps in them (use adobe's "coderange" data to manage a sparce array).
	<LI>
	  If we could not find any style modifiers in a fontname, then we used to claim
	  that the style was "Regular". I think it is better if we claim that it is
	  /Width (ie. whatever is in the FontInfo /Width entry) and if that isn't set
	  then return "Regular")
      </UL>
    <LI>
      26-July-2002
      <UL>
	<LI>
	  Added support for Werner's (TeX's) Sub Font Definition files which provide
	  a way of splitting up a 2 byte encoding into lots of little pfb fonts with
	  256 characters in each.
	<LI>
	  Normally in a ttf font, FontForge generates a 'post' table with the names
	  of all the characters in it. I've just added a way to make it generate a
	  short 'post' table with no character names.
	<LI>
	  FontForge generates bad truetype hints. There is now a way to turn these
	  off in the Generate Font dlg.
      </UL>
    <LI>
      24-July-2002
      <UL>
	<LI>
	  Code for finding the style still not working as it should.
	<LI>
	  Oops, the postscript parser was over-zealous about generating warnings.
	<LI>
	  Oops, the code which interprets results from autotrace was over-zealous on
	  getting rid of contours in small images. 
	    <HR>
	<LI>
	  SetUnicodeValue did not behave as it should have.
	<LI>
	  Made acorn2sfd a little sturdier. 
	    <HR>
	<LI>
	  Bitmap copies didn't work from the font view (probably broke when I added
	  anti-aliased support)
      </UL>
    <LI>
      23-July-2002
      <UL>
	<LI>
	  Crash bug introduced yesterday by the duplicate name work.
	<LI>
	  Initial version of <I><A HREF="acorn2sfd.html">acorn2sfd</A></I> -- a program
	  to convert Acorn RISC/OS font directories into sfd files.
	<LI>
	  If a font is loaded from a ttf file, then it will have both postscript and
	  ttf versions of certain names stored (family, copyright, version, etc.).
	  The postscript names are obviously displayed, but changing them would not
	  change the ttf versions. So generating a ttf font and then looking at it
	  would still show the old setting of the name. The two should be better
	  synchronized now.
      </UL>
    <LI>
      22-July-2002
      <UL>
	<LI>
	  Introduced a crash yesterday if a postscript font contained an name in an
	  encoding vector which was not defined in the font. 
	    <HR>
	<LI>
	  More work on duplicate names. I no longer append a ".&lt;number&gt;" to the
	  end of duplicate entries and when generating fonts I remove them and generate
	  an encoding with has multiple references to the base glyph. Which is what
	  I should have been doing.
	<LI>
	  Small improvements to the style name detector.
	<LI>
	  If the Width field was a null string, then reading it from an sfd file caused
	  us to thing the next keyword was the width.
	<LI>
	  Fixed a bug in the display of menus.
      </UL>
    <LI>
      21-July-2002
      <UL>
	<LI>
	  Various small bugs in build accented characters
	<LI>
	  On the mac the filenames for mac resource fonts are different from same fonts
	  elsewhere (elsewhere they have an additional ".bin"). Made either extension
	  work from a script file (so they can work cross platform).
	<LI>
	  Expand Stroke had problems with curved splines where the slope at one of
	  the end-points was 0/0. Since this will happen by default when joining a
	  corner point to a curved point this should have been a frequent occurrence.
	<LI>
	  Bug in generating 'post' table if glyph 0 existed but was not .notdef.
	<LI>
	  PostScript fonts with one glyph going to multiple encodings cause problems.
	<LI>
	  Now both PS and TTF load will have consistent names in the above case.
	<LI>
	  My presumption of how symbol encodings were stored under MicroSoft was wrong.
	  It is not a one byte encoding, it is a map into the private/corporate use
	  area of unicode. 0xf000-0xf0ff. Changed to deal with that.
	<LI>
	  Loading a font with mac roman encoding often generated a font of 65536 characters
	  (rather than 256+a few extras). Fixed.
	<LI>
	  New version of autowidth/kern. I don't think it kerns serifed fonts well,
	  might do ok for sans.
	<LI>
	  Ability to provide autokern with a list of potential kern pairs and have
	  it just check them. 
	    <HR>
	<LI>
	  Scripting support for kernpair files
	<LI>
	  AutoWidth/Kern now does a little better on serifed fonts
      </UL>
    <LI>
      15-July-2002
      <UL>
	<LI>
	  Correct Direction should now only set the changed bit when it actually changes
	  a character.
	<LI>
	  Correct Direction will now warn about flipped references, and offer you the
	  chance to unlink them (after which it will be able to correct their direction)
	<LI>
	  Added ability to scripting to check if a character has changed, and to get
	  a font's filename.
	<LI>
	  Cleaned up build accented chars a bit.
	<LI>
	  Another attempt to keep X from crashing on disappearing progress dlgs.
	<LI>
	  Maximizing the fontview could make it bigger than the screen so that the
	  scroll bar was unusable.
      </UL>
    <LI>
      14-July-2002
      <UL>
	<LI>
	  Valek points out that bitmaps generated by freetype were one pixel too high.
	<LI>
	  Changed the get info dlg for references so that the user could change the
	  transformation matrix.
	<LI>
	  Font Info-&gt;PS Private got the wrong value when guessing the vertical stem
	  snaps
	<LI>
	  FontForge did not find ghost hints for things at the numeric height.
	<LI>
	  FontForge got non-integer values for some hints where it should have found
	  integer values.
	<LI>
	  Bug when auto-hinting references fixed.
	<LI>
	  FontForge would find hints for things that don't need to be hinted (finding
	  a vertical stem for the top of "E" for instance. There is a vertical stem
	  there, but it is deemed irrelevant). It now finds fewer of these hints. I
	  hope it still finds all the legitimate ones.
      </UL>
    <LI>
      13-July-2002
      <UL>
	<LI>
	  I think I've finally worked out Apple's scaled offset
	  <A HREF="Composites/index.html">composite</A> glyphs (and they do not behave
	  as Apple documents)
	<LI>
	  FontForge was not setting the maxCompositePoints and maxCompositeContours
	  fields of the maxp table of truetype fonts. This meant that in some cases
	  rasterizers would crash when trying to deal with characters containing many
	  components.
	<LI>
	  The translation tables between unicode and johab were wrong.
	<LI>
	  FontForge failed to generate ttf fonts with big5/sjis/wansung cmaps.
	<LI>
	  Changed so that reading sjis/wansung encoded ttf files would use a sjis/wansung
	  encoding in fontforge (rather than the 94x94 encoding that no one but me
	  seems to understand).
      </UL>
    <LI>
      9-July-2002
      <UL>
	<LI>
	  Bug in generating ttf fonts with embedded bitmaps.
	<LI>
	  Open Font dlg will now try again if it can't load a valid font.
	<LI>
	  Started working on a
	  <A HREF="http://cvs.sourceforge.net/viewcvs.cgi/fontforge/fontforge/test/">minimal
	  testsuite</A>, and what do you know? I found some bugs...
	  <UL>
	    <LI>
	      Scripting had problems when user preference was set to ask for bdf resolution.
	    <LI>
	      Generate() scripting built in now takes an optional resolution argument
	    <LI>
	      Problems generating the vertical metrics tables in cid keyed otf fonts
	    <LI>
	      Problems working with cid-keyed fonts in scripts if fontforge could not find
	      the requisite cidmap file 
		<HR>
	  </UL>
	<LI>
	  Fixed various problems with parsing EPS files, and extended the vocabulary
	  a little.
	<LI>
	  If the ".notdef" character was whitespace (as it is for most postscript fonts)
	  then generating a ttf font would produce an entry for glyph 0 that both flint
	  and NT consider to be erroneous, while freetype and windows think it's fine.
	  Fixed so that Flint no longer complains.
	<LI>
	  the fontview could get confused about matching short names with periods in
	  them against the standard postscript unicode names, so it could think that
	  "b.0" matched "bracketleft". This caused some confusion in the display.
      </UL>
    <LI>
      27-June-2002
      <UL>
	<LI>
	  A couple more vms patches
      </UL>
    <LI>
      26-June-2002
      <UL>
	<LI>
	  Merged in Jouk Jansen changes for OpenVMS
      </UL>
    <LI>
      23-June-2002
      <UL>
	<LI>
	  Valek wanted to be able to add comments to characters and to flag characters
	  with some visible mark. The <A HREF="charinfo.html#Character">Char Info </A>dlg
	  has been extended to do this. The scripting language has been extended to
	  allow scripts to set and test these too.
	<LI>
	  Added a "foreach selected character in the font" loop.
	<LI>
	  Added $selection variable to return the current selection as an array
	<LI>
	  Extended the Select() and SelectMore() commands to accept an array as an
	  argument (and set the selection to the array).
      </UL>
    <LI>
      22-June-2002
      <UL>
	<LI>
	  Yesterday's unicode sprintf change introduced another bug. Fixed
	<LI>
	  Valek points out that if you have a bitmap only font and you attempt
	  simultaneously to scale it and delete all the bitmaps, then FontForge would
	  crash. (Same thing would happen if you just removed all the bitmaps).
	<LI>
	  Valek provided some additional russian translations.
      </UL>
    <LI>
      21-June-2002
      <UL>
	<LI>
	  Ttf fonts seem to be unhappy if they contain a glyph with a single contour
	  and a single point on that contour. I don't know why. Output all such as
	  spaces.
	<LI>
	  Added ability to set the resolution of a bdf font.
	<LI>
	  Rearranged preferences.
	<LI>
	  Added scripting access to Force-Encoding
	<LI>
	  FontForge memory allocation optimizations didn't work if sizeof(int *)==8
	<LI>
	  Bug in unicode sprintf routine when sizeof(long)==8
	<LI>
	  In some cases when reading a ttf font with a (unicode) cmap which assigned
	  one glyph to two encodings, and if that glyph happened to be in the
	  AdobeStandardEncoding, then when converting to Type1 FontForge would create
	  a dictionary which recursively seac-ed (invoked) itself. This caused an infinite
	  loop in GhostView, and crashed some printers.
      </UL>
    <LI>
      11-June-2002
      <UL>
	<LI>
	  CID fix on 3 June was wrong, it broke all non-CID keyed postscript fonts
	  (it did work for CID fonts). Both should work now.
	<LI>
	  Added better support for bdf foundries and for bdf copyrights.
	<LI>
	  Added a preference item to specify the ttf VendorID (foundry). Used to truncate
	  the bdf foundry to 4 characters.
	<LI>
	  Small bug fix in print
	<LI>
	  Cleaned up bug in scripting ($bitmaps)
      </UL>
    <LI>
      7-June-2002
      <UL>
	<LI>
	  Fixed some more CID font problems
	<LI>
	  Tweaked behavior of FamilyName/FullName in GetFontInfo dlg.
      </UL>
    <LI>
      6-June-2002
      <UL>
	<LI>
	  FontForge now supports greymap strikes in truetype files
	<LI>
	  The bitmap editor has been extended to handle greymap (anti-aliased) fonts
	<LI>
	  There is no longer a separate mechanism for generating greymap files from
	  the Generate Font dlg, instead they may be added to the font database file
	  with the bitmap dlg.
	<LI>
	  Added support for vertical metrics in bdf files.
	<LI>
	  Fixed some problems in moving the vwidth line in outline character views
	<LI>
	  Added some default window positioning code.
      </UL>
    <LI>
      4-June-2002
      <UL>
	<LI>
	  Oops, more bug fixes for the new greymap format.
	<LI>
	  One more attempt to solve the X Server bug where destroying/unmapping a window
	  before its map notify event gets processed causes the X server to crash.
      </UL>
    <LI>
      3-June-2002
      <UL>
	<LI>
	  Stopped using my extension to bdf to make it support greymaps and started
	  using that supported by freetype (removed the BITSPERPIXEL keyword and added
	  an extra argument to the SIZE keyword).
	<LI>
	  More fixes for cid fonts
      </UL>
    <LI>
      18-May-2002
      <UL>
	<LI>
	  Font Info will prompt user about changing the UniqueID/XUID if the font name
	  is changed without changing them.
	<LI>
	  Fixed some Mac configuration problems.
      </UL>
    <LI>
      16-May-2002
      <UL>
	<LI>
	  FontForge would not compile when trying to used libjpeg as a static library
	  (as on Mac OS/X)
	<LI>
	  Use psili rather than koronis where appropriate
	<LI>
	  It was not possible to select the ellipse/star tool from the tools palette.
      </UL>
    <LI>
      14-May-2002
      <UL>
	<LI>
	  Made fontforge work without X (ie. the scripting engine can be linked without
	  requiring that X be present. Possibly useful for Mac OS/X, Cygwin) 
	    <HR>
	<LI>
	  When showing what a greek accented character will be built from, the character
	  info dlg will now show the non-unicode alternate whether or not the characters
	  needed exist in the font.
	<LI>
	  The Reference Info dlg will now include the unicode value of the referenced
	  character
	<LI>
	  The positioning of ypogegrammeni with respect to eta was broken (again)
	<LI>
	  Some more greek fixes.
      </UL>
    <LI>
      13-May-2002
      <UL>
	<LI>
	  Various fixes for greek accented characters
      </UL>
    <LI>
      7-May-2002
      <UL>
	<LI>
	  FontForge would crash when attempting to Flatten a CID keyed font (introduced
	  16-Apr with the multiple fontview support)
	<LI>
	  FontForge did not process panose information correctly (broken 21-Jan, comment
	  change)
	<LI>
	  FontForge did not create new ttf names properly when they were for a language
	  which had not been used before in the font.
      </UL>
    <LI>
      6-May-2002
      <UL>
	<LI>
	  Oops. Adobe describes two naming conventions for ligatures and I only supported
	  one of them. I should support the other one now.
	<LI>
	  Fixed a number of bugs caused by custom encodings.
	<LI>
	  If the selection in the font view contained either "dotlessi" or "dotlessj"
	  and the Element menu was pulled down then the dotless characters would be
	  created from their dotted variants (you didn't even have to select anything
	  from the menu) (broken 24-Feb-2002)
	<LI>
	  FontForge had trouble reading non-empty ttf glyphs with 0 contours.
	<LI>
	  FontForge failed to read images from an sfd file without a transparent colour
	<LI>
	  Allow parens in familyname in the fontinfo dlg.
	<LI>
	  When the width was selected, depressing a mouse button would snap the logical
	  pointer location to a random x coordinate (often 0).
	<LI>
	  When generating a ttf file from a subfont of a CID keyed font fontforge would
	  crash. This has been fixed.
	<LI>
	  When exiting with multiple font views looking at one (changed) font, there
	  would be no prompt to save the font.
	<LI>
	  Added a <A HREF="search.html">Find/Replace</A> feature
      </UL>
    <LI>
      16-Apr-2002
      <UL>
	<LI>
	  BDF fonts did not mark the missing (.notdef, undefined, etc.) character properly.
	<LI>
	  otf fonts had the default and normative widths reversed on output
	<LI>
	  Added marginally better support for non-latin ligatures in GPOS/GSUB tables.
	<LI>
	  Added support for arabic forms in the GSUB table (ie. we now produce 'init',
	  'medi', 'fina', and 'isol' features)
	<LI>
	  Build composite should now note whether arabic ligatures are
	  &lt;initial&gt;, &lt;final&gt;, &lt;medial&gt; or &lt;isolated&gt;
	<LI>
	  It is now possible to have multiple font views looking at one font. I expect
	  this will be a rich source of bugs, especially for CID keyed fonts.
      </UL>
    <LI>
      9-Apr-2002
      <UL>
	<LI>
	  Under KDE we could get two textfields flashing cursors (thinking they had
	  focus) should be fixed.
	<LI>
	  Added Undo/Redo to metricsview
	<LI>
	  Added Undo/Redo to fontview
	<LI>
	  Added Element menu to metricsview
	<LI>
	  Added [Fix] button to (some of) Find Problems
      </UL>
    <LI>
      5-Apr-2002
      <UL>
	<LI>
	  Applied various patches from KANOU Hiroki
	<LI>
	  Changes to metricsview
	  <UL>
	    <LI>
	      Fixed some minor bugs
	    <LI>
	      Double clicking on a character will open that character
	    <LI>
	      Enabled Copy/(CopyRef/CopyWidth/)Paste but not Cut
	  </UL>
	<LI>
	  FontForge had problems when there were exactly two X resources.
	<LI>
	  Made the Point Info dlg wider.
	<LI>
	  Improved printing text samples at large point sizes.
	<LI>
	  I was generating flex hints incorrectly.
	<LI>
	  Extended postscript interpreter slightly to recognize the eps files (called
	  "art") produced by fontographer
	<LI>
	  Additions to the scripting language
	  <UL>
	    <LI>
	      CenterInWidth
	    <LI>
	      AutoWidth (from Andreas P&aring;hlsson)
	    <LI>
	      AutoKern
	  </UL>
	<LI>
	  The Expand Stroke fix for 4-Mar-2001 was too extreme.
	<LI>
	  Added a field to Char Info that shows the components out of which this character
	  (accented, ligature, hangul syllable, etc.) may be built.
      </UL>
    <LI>
      3-Apr-2002
      <UL>
	<LI>
	  Various scrollbar enhancements
	  <UL>
	    <LI>
	      thumb now has a bigger minimum size
	    <LI>
	      fontview/charview both respond to page up and page down requests
	    <LI>
	      right mouse button may be used to position thumb
	  </UL>
	<LI>
	  Installed James A. Crippen makefile patch so that distclean reports success
	  even if there are no files to clean.
	<LI>
	  FontForge had problems guessing default ligatures for characters outside
	  of BMP.
	<LI>
	  In the outline character view, double clicking with one of the point tools
	  (curve, corner, tangent, pen) will add a point and then bring up a
	  <A HREF="getinfo.html">Point Info</A> dialog
	<LI>
	  If you edit in a textfield (so that the mouse pointer vanishes) and then
	  tabbed into another text field the mouse pointer would never reappear.
	<LI>
	  Merge Fonts left memory in a bad state and would often cause a crash.
	<LI>
	  Merge Fonts used a string for a title which was ascii when unicode was expected.
	  This could cause strange characters to be displayed.
	<LI>
	  More fixes for build accented characters (for inverted breve and Oslash).
      </UL>
    <LI>
      14-Mar-2002
      <UL>
	<LI>
	  Nifty. The modifier keys auto-repeat under cygwin (if Control is down one
	  gets a series of Press/Release, Press/Release... while normal X just gives
	  one Press.) This meant we'd keep refreshing the tools palette, which meant
	  an annoying flicker and slowed things down.
	<LI>
	  Raise the palettes after a resize
	<LI>
	  FontForge didn't handle 8bit colormaps well. I've improved the behavior,
	  and added an x resource to give the user some control over behavior.
      </UL>
    <LI>
      10-Mar-2002
      <UL>
	<LI>
	  Oops. I broke CID-keyed postscript input (ie. none-otf) when I added the
	  6-Mar fix for type1utils
	<LI>
	  Applied another patch from KANOU Hiroki, on otf cid support
      </UL>
    <LI>
      9-Mar-2002
      <UL>
	<LI>
	  added docs for sfddiff.
      </UL>
    <LI>
      8-Mar-2002
      <UL>
	<LI>
	  Added a new program, <A HREF="sfddiff.html">sfddiff</A>, to compare fonts
	  and show their differences.
      </UL>
    <LI>
      6-Mar-2002
      <UL>
	<LI>
	  Small change to the format of cidmap files (to bring names into conformance
	  with adobe's spec on modified unicode names), and corresponding changes to
	  a few routines.
	<LI>
	  Add support for the type1 format produced by GNU type1utils. Which is vaguely
	  like that used by ghostview.
      </UL>
    <LI>
      4-Mar-2002
      <UL>
	<LI>
	  Fixed more problems with reading eps files (these were mostly within Expand
	  Stroke, so presumably also problems with Element-&gt;Expand Stroke)
	<LI>
	  And one more problem with the file chooser.
	<LI>
	  Scripting additions:
	  <UL>
	    <LI>
	      Ability to generate a pfm file from script
	    <LI>
	      Ability to Merge Kerning Info from a script
	    <LI>
	      Ability to Remove All Kerning info from a script
	  </UL>
	<LI>
	    <HR>
	  Will now display something useful for rotated and italic cids
      </UL>
    <LI>
      3-Mar-2002
      <UL>
	<LI>
	  Fixed a number of problems involved in reading in eps files.
	<LI>
	  28-Feb Mac work introduced a bug in the file picker dlg (in wildcarding).
      </UL>
    <LI>
      2-Mar-2002
      <UL>
	<LI>
	  Rounding errors could accumulate when generating Type1 fonts.
	<LI>
	  Fix for some overlap problems due to KANOU Hiroki
	<LI>
	  If FontForge crashed (or was interrupted) after making some (unsaved) changes
	  to a font, and that font was subsequently deleted, the FontForge's autorecovery
	  would complain about a missing file each time it was started. Now it will
	  notice the problem and ask whether it should delete the recovery file (whereupon
	  it will stop complaining).
	<LI>
	  Enabled a fix from Greg Ford so that FontForge set the mac style bits
	  appropriately.
      </UL>
    <LI>
      28-Feb-2002
      <UL>
	<LI>
	  When running under Mac OS/X FontForge is now able to open/create mac resource
	  forks
	<LI>
	  I may have fixed a bug displaying images on solaris screens with bit depth
	  8
	<LI>
	  Cleaned up a problem with the postscript name table (in a ttf file) when
	  there was a .notdef character
	<LI>
	  Fixed some problems with references when reading in truetype.
      </UL>
    <LI>
      24-Feb-2002
      <UL>
	<LI>
	  Substr() did not work when given three arguments
	<LI>
	  Added
	  <UL>
	    <LI>
	      $bitmaps (returns an array of all bitmap sizes rasterized for the current
	      font)
	    <LI>
	      BitmapsAvail()
	    <LI>
	      BitmapsRegen()
	  </UL>
	<LI>
	  Changed the FontInfo dlg to give direct access to the postscript names rather
	  than trying to build the fontname out of family and modifiers.
	<LI>
	  Added the ability to create an encoding which is any given plane of unicode
	  (ie BMP is plane 0, SMP is plane 1, SIP is plane 2...)
	<LI>
	  Fixed a bug in Revert
	<LI>
	  More work on hints. 
	    <HR>
	<LI>
	  Build Composite will now build a dotlessi from an "i" (and same for dotlessj)
      </UL>
    <LI>
      20-Feb-2002
      <UL>
	<LI>
	  Made Shift-Arrow keys move along italic axis.
	<LI>
	  $argv didn't work in scripting. (broken when I added arrays)
      </UL>
    <LI>
      19-Feb-2002
      <UL>
	<LI>
	  Bugs in the generation of MacRoman encoding tables in ttf output (introduced
	  14-Feb)
	<LI>
	  The Goto Dlg sometimes didn't notice Returns (ie. OK button wasn't always
	  invoked)
	<LI>
	  Some linear splines were not noticed as such.
      </UL>
    <LI>
      18-Feb-2002
      <UL>
	<LI>
	  Cancelling the Point Info dlg would leave minimum distance hints in a bad
	  state.
	<LI>
	  Using Undo also left the MD hints wonky
	<LI>
	  added $fontchanged to scripting
	<LI>
	  Added SaveAll menu item in font view.
	<LI>
	  Sometimes the underlines for accelerators didn't print in the menu (depended
	  on what FontForge thought the screen resolution was).
	<LI>
	  Added a new minimum distance hint for serifs of diagonal stems.
	<LI>
	  Fixed a bug where some extra serif stems were hinted.
      </UL>
    <LI>
      16-Feb-2002
      <UL>
	<LI>
	  Created a "Select" submenu of the edit menu in the outline view. Moved
	  Edit-&gt;Select All, View-&gt;Next Point, View-&gt;Prev Point into it.
	<LI>
	  Added Deselect All, Select Next Control Point, Select Prev Control Point,
	  Select First Point, Select Width, Select VWidth
	<LI>
	  It is now possible to select the width (right bearing) line and move it with
	  the arrow keys or transform dlg (or to move points and the width line
	  concurrently). VWidth too.
	<LI>
	  Added variables with global and font scope to Scripting.
	<LI>
	  Yet another bug in the new simplify/merge code
	<LI>
	  Cleaned up unicode range names a bit more. 
	    <HR>
	<LI>
	  Changed the Goto Character dialog so that it will now (for two/four byte
	  encodings) display a list of unicode ranges which are in the font and allow
	  you to go to a range by name.
	<LI>
	  Made it possible to copy and paste the left and right side bearings (from
	  menus and scripts)
      </UL>
    <LI>
      14-Feb-2002
      <UL>
	<LI>
	  My TrueType parser will now read cmap subtable formats 8,10 and 12 (the 4
	  byte encoding tables) and will produce format 12 subtables for full unicode
	  fonts.
	<LI>
	  Cleaned up various encoding problems.
	<LI>
	  Fixed display of SJIS.
	<LI>
	  Added better commentary on unicode outside of BMP
	<LI>
	  Cleaned up the spec file
	<LI>
	  In pfb files subroutines for references didn't work if the first thing called
	  was untranslated.
	<LI>
	  The arrow keys can be used to move a control point.
      </UL>
    <LI>
      12-Feb-2002
      <UL>
	<LI>
	  Added sjis and Wansung encodings
	<LI>
	  Used freetype for a couple of other things (generating gdf files and exporting
	  bitmaps)
	<LI>
	  Textfields didn't respond to middle button clicks (to paste the primary
	  selection).
	<LI>
	  FontForge would sometimes fail to exit properly if you brought up a script
	  dlg.
	<LI>
	  Added a --version command line option.
	<LI>
	  Fixed another bug in generating postscript.
	<LI>
	  Added a user defined print command option to the print dlg.
	<LI>
	  Fixed a bug in Simplify/Merge
	<LI>
	  Fixed a bug in loading integer resources
	<LI>
	  Cleaned up the help command line option.
      </UL>
    <LI>
      9-Feb-2002
      <UL>
	<LI>
	  FontForge will now use freetype (if available) to generate bitmaps for the
	  fonts (results are much better).<BR>
	  It still does its own rasterizing for the fontview (there's a lot of overhead
	  involved with freetype, and this needs to be fastish)
	<LI>
	  Made the Generate Font dlg settings sticky across invocations of fontforge.
      </UL>
    <LI>
      8-Feb-2002
      <UL>
	<LI>
	  FontForge would crash when generating a PostScript font from ARIAL.TTF.
	<LI>
	  Changed the bitmap dlgs so that they allow you to specify some control over
	  interesting screen resolutions. (before just support X standard res. of 75
	  and 100, now support MS 96&amp;120 and Mac 72).
	<LI>
	  Oops, Apple now documents that the bdat and bloc tables should have version
	  number 0x20000. But when I last looked it said 0x10000 and that didn't work.
	<LI>
	  Put the docs in their own rpm file.
      </UL>
    <LI>
      7-Feb-2002
      <UL>
	<LI>
	  I think I've figured out how Apple does asian bitmaps now. They don't use
	  NFNTs at all (or they do, but those NFNT are tiny stubs with no real data
	  in them). All the data are in the sfnt. I should produce them properly now.<BR>
	  -- Except I don't.
	<LI>
	  I've also added the ability to create bitmap only sfnts for the mac.<BR>
	  -- Which also isn't recognized by the mac.
	<LI>
	  Made it possible for scripts to generate bitmaps without generating an outline
	  font
	<LI>
	  Fixed some problems loading bitmaps from ttf files.
	<LI>
	  Fixed some problems loading bitmaps from anything...
	<LI>
	  Allowed importation of eps files from the font view (to the extent that I
	  can parse eps files, that is)
	<LI>
	  Oops, scripting didn't support importation of pcf files.
      </UL>
    <LI>
      5-Feb-2002
      <UL>
	<LI>
	  Sometimes popup windows (tool tips) would show up with nothing in them. That
	  should be fixed now.
	<LI>
	  Added icons for pcf files
	<LI>
	  Started work on 32 bit unicode.
	<LI>
	  Oops. Scripting handled the calligraphic pen angle incorrectly.
	<LI>
	  Put something into the about box.
      </UL>
    <LI>
      4-Feb-2002
      <UL>
	<LI>
	  Oops. FontForge was misusing the type1 "seac" command in some cases. I had
	  not realized that the character being built needed to have the same width
	  as the base (non-accent) character. This has been fixed.
	<LI>
	  When using the charinfo dlg to change the name of a char, and that name was
	  in use, and you cancelled the dlg after being warned about it then FontForge
	  would crash (it would muck up memory).
	<LI>
	  FontForge wasn't always calling subroutines (in postscript) when a character
	  was in a subr.
	<LI>
	  FontForge will now read in X11 pcf font files (they can be compressed, if
	  so FontForge will decompress them first).
	<LI>
	  Bug in wildcard processing for file chooser window.
      </UL>
    <LI>
      1-Feb-2002
      <UL>
	<LI>
	  Nifty! SUSE ships some greek (bitmap) fonts with iso8859-1 encodings rather
	  than iso8859-7. FontForge is now alert and when it sees a bitmap font with
	  foundary "greek" and encoding "iso8859-1" it will pretend it has encoding
	  "iso8859-7".
	<LI>
	  FontForge got confused by some fonts produced by type1fix.pl. Should be fixed.
	<LI>
	  Build Composite Characters will now check the user defined ligature string
	  to see what characters to use to build a ligature.
      </UL>
    <LI>
      31-Jan-2002
      <UL>
	<LI>
	  Conversion tables between JIS0201 (Katakana) and Unicode were wrong. KANOU
	  Hiroki provided correct ones.
      </UL>
    <LI>
      30-Jan-2002
      <UL>
	<LI>
	  Oops. I'd left diagonal stems enabled in ttf generation. Caused problems.
	  Disabled now.
	<LI>
	  More work on accented characters.
      </UL>
    <LI>
      29-Jan-2002
      <UL>
	<LI>
	  Sped up background image drawing (finally)
      </UL>
    <LI>
      28-Jan-2002
      <UL>
	<LI>
	  Added
	  <UL>
	    <LI>
	      Strtol
	    <LI>
	      Strskipint
	    <LI>
	      AskUser
	    <LI>
	      Error
	  </UL>
	<LI>
	  Added a menu of commonly used scripts which the user can specify with the
	  preference dlg.
      </UL>
    <LI>
      25-Jan-2002
      <UL>
	<LI>
	  Oops. Generate command in scripting language only generated pfb fonts
	<LI>
	  FontForge would get confused if it loaded a font from a script when running
	  with windows. Eventually it would crash, but perhaps not until you exited.
	<LI>
	  Added
	  <UL>
	    <LI>
	      $italicangle
	    <LI>
	      $cidfontname, $cidfamilyname, $cidfullname
	    <LI>
	      $weight, $copyright
	    <LI>
	      $cidweight, $cidcopyright
	    <LI>
	      SetItalicAngle
	  </UL>
	<LI>
	  Removed $cidname (replaced with $cidfontname)
	<LI>
	  Added a Call... button to the execute script dlg to allow you to insert a
	  call to a script file easily
      </UL>
    <LI>
      24-Jan-2002
      <UL>
	<LI>
	  Added a way to scale dlgs in different languages.
      </UL>
    <LI>
      23-Jan-2002
      <UL>
	<LI>
	  Fixed a crash in merge (caused by selecting all points on a path and merging
	  it (to remove the path))
	<LI>
	  Improved positioning of ogonek and cedilla accents in Build Accented Character
      </UL>
    <LI>
      22-Jan-2002
      <UL>
	<LI>
	  Added:
	  <UL>
	    <LI>
	      SetCharCnt
	    <LI>
	      SetCharName
	    <LI>
	      SetUnicodeValue
	    <LI>
	      CIDChangeSubFont
	    <LI>
	      SetFontNames
	    <LI>
	      CIDSetFontNames
	    <LI>
	      $curcid, $nextcid, $firstcid, $cidname
	  </UL>
	<LI>
	  Cleaned up ligature handling in char info dlg
	<LI>
	  Cleaned up array freeing in scripting.
	<LI>
	  Fixed a crash in FontInfo introduced yesterday
      </UL>
    <LI>
      21-Jan-2002
      <UL>
	<LI>
	  Import will now allow you to import background images from the font view<BR>
	  (and the default setting of "Background" for "pk" files has been set to true)
	<LI>
	  Added a scripting command to access
	  <UL>
	    <LI>
	      Import
	    <LI>
	      strlen
	    <LI>
	      strstr
	    <LI>
	      strcasecmp
	    <LI>
	      strsub
	    <LI>
	      arrays
	    <LI>
	      access to the postscript names of the font
	    <LI>
	      access to information about individual characters
	  </UL>
	<LI>
	  Cleaned up some display oddities in the fontview.
	<LI>
	  Added a Set Width command to the bitmap view IF there is no outline font.
	<LI>
	  Added a menu item to invoke a script
	<LI>
	  Added a "Comment" field to FontInfo. This does not correspond to any postscript
	  or truetype entity. It is to be used for a changelog within the sfd file
	  (or something similar).
      </UL>
    <LI>
      19-Jan-2002
      <UL>
	<LI>
	  Initial version of <A HREF="scripting.html">scripting</A>.
	<LI>
	  Optimizer caused rounding errors which caused test for divide by zero to
	  fail leading to errors in Simplify and Merge commands.
	<LI>
	  bdf fonts with an encoding which did not itself include "-1" (or similar)
	  failed to get the implied "-0" added.
      </UL>
    <LI>
      17-Jan-2002
      <UL>
	<LI>
	  FontForge used to crash (sometimes anyway) if a list popup were active when
	  a window was destroyed.
	<LI>
	  TextFields within tabsets (like Font Info) responded to some events twice.
	<LI>
	  Bug in the new TTF hinting routines could cause a crash (and did cause glyph
	  programs which were erroneous)
	<LI>
	  Crash caused by long names in /etc/passwd when creating a new font
	<LI>
	  Redid fontname handling in Font Info dlg to allow URW names to pass through
	  unscathed
	  <UL>
	    <LI>
	      Recognize "Regu" as meaning "Regular"
	    <LI>
	      Only updates the fullname (human readable name) if it were previously in
	      sync
	    <LI>
	      Recognize "-" as starting the modifiers rather than trying to find the end
	      of the family name
	    <LI>
	      If you don't change the family or the modifiers then fontforge will now leave
	      the fontname untouched
	  </UL>
      </UL>
    <LI>
      14 Jan 2002
      <UL>
	<LI>
	  The 9 Jan metrics view fix caused crashes when changing the last character
	  displayed.
	<LI>
	  The outline view now will display points at extrema in a different color
	  from other points if you want that.
	<LI>
	  Added a command to the font view to clear out the backgrounds of all selected
	  characters.
	<LI>
	  Fixed one more image freeing problem (see 29-Dec-2001) 
	    <HR>
	<LI>
	  bdf fixes of 9&amp;11 Jan did not work on bdf files with character encodings
	  of "-1"
	<LI>
	  Fixed several bugs with ttf bitmap tables.
	<LI>
	  Added a mechanism for specifying a font inside a truetype collection from
	  the command line:<BR>
	  <CODE>&nbsp; &nbsp; $ fontforge "gulim.ttc(GulimChe)"</CODE><BR>
	  will load the GulimChe font within the collection file.
      </UL>
    <LI>
      12 Jan 2002
      <UL>
	<LI>
	  Russian ui had an unexpected space in it which confused makenomenh. Have
	  fixed both (makenomenh &amp; nomen.ru)
	<LI>
	  Last fix to Merge made most merges return straight lines
	<LI>
	  Added an elide command which allows the slopes of the endpoints to change
	<LI>
	  Releasing the control or super key when in one of the palettes did not update
	  the tool cursor.
	<LI>
	  The point info dlg now comes up beside (rather than on top of) the selected
	  point.
      </UL>
    <LI>
      11 Jan 2002
      <UL>
	<LI>
	  bdf "fix" of 9 Jan. lost the encoding of the font.
	<LI>
	  FontForge source included "ushort" in a couple of places. Linux must define
	  this but some systems don't. It has been changed to uint16 which I define.
	<LI>
	  Worked around some imaging bugs of the X server under cygwin (FontForge seems
	  to work under cygwin now)
	<LI>
	  Using the arrow keys to scroll only worked if something were selected. should
	  always work now.
	<LI>
	  The fontview now contains an indication of which characters have backgrounds
	<LI>
	  Minor improvements to merge when given an impossible problem.
      </UL>
    <LI>
      9 Jan 2002
      <UL>
	<LI>
	  destroy window fix on 2 Jan was not enough, it popped up again. Hope I've
	  killed it this time
	<LI>
	  FontForge had trouble reading bdf fonts that
	  <UL>
	    <LI>
	      did not have standard X font names (-vendor-family-weight-italic-...)
	    <LI>
	      had the same name used for different characters
	  </UL>
	<LI>
	  The metrics view got confused by characters with negative lbearings.
	<LI>
	  Added some Japanese (Kanji) text samples.
      </UL>
    <LI>
      8 Jan 2002
      <UL>
	<LI>
	  Fixed a bug in gdf output
      </UL>
    <LI>
      7 Jan 2002
      <UL>
	<LI>
	  Added a traditional chinese sample
	<LI>
	  In the metrics view, the kerning offset was not rescaled when the size of
	  the window changed.
	<LI>
	  Added a preference item to control the amount by which the arrow keys move
	  selected points
	<LI>
	  Changed the behavior of the grid layer so that now points will snap to any
	  spline in the grid layer, not just horizontal and vertical splines
	<LI>
	  Added a preference item to control this snap distance.
	<LI>
	  Added a couple new outline display sizes to the fontview
	<LI>
	  Use the "super" modifer to simulate a mouses middle button. If the super
	  key (the one with a windows flag on it on pc keyboards) is depressed then
	  any mouse click will be treated as if it were mouse button 2 that was used.
	<LI>
	  Minor improvements in truetype hinting
      </UL>
    <LI>
      4 Jan 2002
      <UL>
	<LI>
	  if a dfont (or other mac resource file) contains multiple truetype fonts,
	  fontforge will let you pick one (before it would read in the first and ignore
	  the others)
	<LI>
	  The tools palette now shows the mouse bindings.
	<LI>
	  Next/Prev control points are drawn in different colors now, and those colors
	  are reflected in the point get info dlg.
	<LI>
	  Merge and Simplify will now retain the slope of curve points.
	<LI>
	  Simplify will no longer remove points at the extrema of their curves (PostScript
	  fonts are supposed to have points at the extrema)
	<LI>
	  New command in Element menu to <A HREF="elementmenu.html#Add-Extrema">add
	  points at extrema</A> to a spline or set of splines.
	<LI>
	  Next/Prev Point commands will shift the screen so the newly selected point
	  is visible.
	<LI>
	  Metrics View now allows for anti aliased character display.
	<LI>
	  Metrics View View menu was broken and was missing half its entries.
	<LI>
	  Revert Font would leave fontforge in a state where some commands would cause
	  a crash. Should be fixed now.
	<LI>
	  TextFields did not scroll properly with the arrow keys.
	<LI>
	  The outline and bitmap views may be scrolled with the arrow keys by holding
	  down either the control or meta key.
	<LI>
	  When reading a ttf file with an encoding fontforge doesn't recognize which
	  has some glyphs which are refered to from multiple code points, then fontforge
	  used to crash.
	<LI>
	  Support Menu key on windows keyboard
	<LI>
	  Use the Windows "flag" key as a modifier to indicate mouse button 2 (so if
	  that key is depressed, and a mouse button is pressed/released pretend it
	  was button2)
      </UL>
    <LI>
      2 Jan 2002
      <UL>
	<LI>
	  Copy From has been made global and sticky (each font used to have a separate
	  value and it got lost on exit. Now there is one global value and it is saved
	  in the prefs file).
	<LI>
	  Copy From now allows you to control whether a character's name should be
	  copied along with the glyph data (only in font view).
	<LI>
	  View-&gt;Fill should now show the current setting.
	<LI>
	  If there were background images in a glyph then changing the Show/Hide rulers
	  made the display wrong
	<LI>
	  In the Outline view, the character's popup box would appear if the mouse
	  were over the menubar. Werner thought that inappropriate.
	<LI>
	  If import bitmaps needed to expand the number of characters in a font (to
	  provide slots for all the bitmaps) it would fail to do so properly. Resulting
	  in a crash.
	<LI>
	  Hmm. There appears to be a race condition inside the XServer on my machine
	  and if I map a window but destroy it before I read the MapNotify (or possibly
	  Expose) event on the queue, then the server will calmly crash. This can happen
	  if a progress indicator is ended just after we decide to display it. I've
	  tried to work around it, but there may still be holes.
	<LI>
	  Added an "About..." menu entry to display the splash screen again
	<LI>
	  Gleep! type1 cid font generation had a couple of problems
	<LI>
	  Print Sample is now available for cid fonts.
	<LI>
	  View-AntiAlias didn't work (characters were always displayed as antialiased)
	<LI>
	  Menus made more responsive to key presses.
	<LI>
	  The Zoom In and Out commands are now centered around the selection (if there
	  is one, if not they continue to use center of the window)
	<LI>
	  Changed the order of entries in the Point Info dlg so that Prev is above
	  Next
	<LI>
	  The Escape key can be used to deselect
	<LI>
	  New copyright notices.
      </UL>
    <LI>
      29-Dec-2001
      <UL>
	<LI>
	  TextFields had numerous display problems. Should have fewer now.
	<LI>
	  The 15 Dec image crash fix was not complete, turns out there were two memory
	  problems (well, two so far)
	<LI>
	  Some dialogs could show up half off the right edge of the screen. Should
	  not do so now.
	<LI>
	  Added a few more language samples for printing.
	<LI>
	  Bidi display didn't work when there were lots of combining letters around
	<LI>
	  Bidi printing didn't work when there was more than one line of right to left
	  text
	<LI>
	  Typing control characters to the fontview will no longer move to that character.
	  <UL>
	    <LI>
	      Typing [Return] opens selected characters
	    <LI>
	      Typing [Tab] moves to next character with something in it.
	  </UL>
	<LI>
	  Depressing the right mouse button invokes a popup menu in the fontview now.
	<LI>
	  Trying to move a control point with the mouse while simultaneously moving
	  the point itself with the arrow keys used to cause a crash
	<LI>
	  Selecting a bdf font which was in a bad format as a background caused a crash.
      </UL>
    <LI>
      19-Dec-2001
      <UL>
	<LI>
	  The german ui file should be in better german
	<LI>
	  fontforge would not notice that an iso10646 bdf file was unicode
	<LI>
	  Support for conversion to and from some 2 byte encodings (LocalCharset preference
	  item)
	<LI>
	  sfd files store the font's encoding as a string rather than a number now
	  so if we add more standard encodings things won't get screwed up as they
	  were when we added johab.
      </UL>
    <LI>
      18-Dec-2001
      <UL>
	<LI>
	  <FONT COLOR="Red"><STRONG>TrueType hints were terrible</STRONG></FONT>. I
	  fixed one huge bug. There are still problems with diagonals and the results
	  are not as nice as Fontographer's, but they are better.
	<LI>
	  Some more greek fixes.
	<LI>
	  Metrics window did not handle the transition from a left -&gt; right view
	  to a right-&gt;left one properly (mostly this means if you had a blank metrics
	  view and you put a hebrew/arabic character into it then that character was
	  displayed left to right).
	<LI>
	  The transform dialog in the fontview now has a checkbox which allows you
	  to control whether you want the background transformed in sync with the
	  foreground.
      </UL>
    <LI>
      17-Dec-2001
      <UL>
	<LI>
	  Fixed another bug with cid fonts, this one when attempting to create such
	  a font in the absence of cidmap files
	<LI>
	  Fixed a bug when outputting otf cid files (bug appeared when I added vertical
	  metrics)
	<LI>
	  When loading a cid font FontForge could get caught up in an semi-infinite
	  loop asking for cidmap files. Should be fixed now.
	<LI>
	  Finally got rid of the annoying warning about tempnam() when linking.
      </UL>
    <LI>
      16-Dec-2001
      <UL>
	<LI>
	  Scrollbars didn't always update in big textfields
	<LI>
	  Missed the hot key for unlink reference in the font view.
	<LI>
	  Fixed crash when clearing empty character cells
	<LI>
	  More greek accent fixes
	<LI>
	  changed character popups slightly.
	<LI>
	  Added another problem to find problems. Will now check for flipped references
	  (=&gt;counter-clockwise paths most of the time)
	<LI>
	  Interesting. The EuroFont uses the endchar opcode in way that both the type1
	  and type2 docs claim to be illegal (it is not the last thing in the subroutine,
	  it is followed by a return). Since EuroFont is from adobe, I presume the
	  docs are wrong, so I ignore this error now. (The Adobe people insist that
	  the docs are right, just misleading. That the endchar is the last thing in
	  the subr because nothing after it gets executed. Hmm, I continue to be misled)
	<LI>
	  FontForge will be better able to figure out where hints should be active
	  when it reads in a postscript font.
	<LI>
	  Autohint will no longer find some erroneous hints.
	<LI>
	  Autohint will now find the serifs in Nimbus Roman
      </UL>
    <LI>
      15-Dec-2001
      <UL>
	<LI>
	  Copying a background image caused a crash at some indeterminate future time
	<LI>
	  Made the Help browser configurable
	<LI>
	  Changed greek accent processing so that it uses more of the greek accents.
	  For reasons known best to themselves, unicode tends to map greek varia to
	  grave, oxia to acute, etc.
	<LI>
	  More work to make sure the screen fonts are readable
	<LI>
	  tabbing into a text field selects all of it.
	<LI>
	  autotrace 2.8 has changed its argument conventions. new versions of fontforge
	  will no longer work with autotrace2.7.
	<LI>
	  If a menu doesn't fit in its window there is now a way to get at the menu
	  items which are offscreen
	<LI>
	  Cleaned up the panose (fontinfo) window
	<LI>
	  Added names to the private use area of unicode for greek small caps (starting
	  at 0xf500)
	<LI>
	  Fixed a couple of autohint problems
	<LI>
	  Manual hint addition might refuse to add a hint if it didn't like it. It
	  should now realize that the user is in charge...
      </UL>
    <LI>
      14-Dec-2001
      <UL>
	<LI>
	  Oops Edward Lee points out that I was missing some colons in my eps file
	  generation.
	<LI>
	  Hot key added for Unlink Reference
	<LI>
	  Werner found two more bugs when reading in cid keyed fonts without a
	  corresponding cidmap file.
      </UL>
    <LI>
      11-Dec-2001
      <UL>
	<LI>
	  Fixed a crash if there were no .cidmap files and FontForge was not installed
	  in a directory named bin.
	<LI>
	  Cleaned up the distribution a bit per Werner's requests
	<LI>
	  Added a ScreenWidthCentimeters resource
	<LI>
	  FontForge will no longer ask the X (Font) Server to scale bitmap fonts. It
	  will only used unscaled bitmaps or outline fonts.
      </UL>
    <LI>
      10-Dec-2001
      <UL>
	<LI>
	  Fixed a crash when adding (manually) a minimum distance hint to the width.
	<LI>
	  Fixed a bug in the configure script which caused it to fail on solaris
      </UL>
    <LI>
      9-Dec-2001
      <UL>
	<LI>
	  Added proper names for Hangul Syllables
	<LI>
	  The Greek fixup wasn't working as it should (sometimes would generate two
	  characters named "Delta" in pfb files). Should be fixed. Should also be
	  controllable by Preference item (ie. you can turn it off if you want to)
	<LI>
	  The metrics view did not display changes
	<LI>
	  The metrics view's cursor sometimes got stuck in the wrong shape
      </UL>
    <LI>
      3-Dec-2001
      <UL>
	<LI>
	  Merge Kern Info dlg crashed if you cancelled it.
	<LI>
	  The encoding tables in the cmap are supposed to be ordered by platform and
	  mine were not.
	<LI>
	  FontForge would crash when writing out very large copyright notices
	  <UL>
	    <LI>
	      I lifted the 2000 character restriction on copyright strings.
	  </UL>
	<LI>
	  If there were more than 2 lines of tabs in a TabSet then clicking on a tab
	  would often cause the wrong pane to appear.
	<LI>
	  Cleaned up Font Info a bit so it looks better with the Russian translations.
	<LI>
	  Fixed a memory leak when generating a truetype font with an encoding other
	  than unicode.
	<LI>
	  Fixed a crash when generating a truetype font which referenced characters
	  with encodings bigger than 65535.
	<LI>
	  Added a patch from Ulrich, FontForge now reads class based kerning from the
	  GPOS table.
      </UL>
    <LI>
      1-Dec-2001
      <UL>
	<LI>
	  Figured out the format of mac .dfont files
	<LI>
	  The mac Command (Apple, Cloverleaf) modifier key is now treated as if it
	  were the Control key (So users may exit FontForge with Command-Q as they
	  expect).
	<LI>
	  Another bug reading in flex hints from OTF. Fixed by Ulrich Klauer.
	<LI>
	  FontForge had problems with drawing images when there was an endian mismatch
	  between the X server and the machine running fontforge.
      </UL>
    <LI>
      27-Nov-2001
      <UL>
	<LI>
	  Build Accented Character failed to update bitmaps in CID keyed fonts
	<LI>
	  Build Accented Character will generate rotated characters when appropriate
	  for CID keyed fonts
	  <UL>
	    <LI>
	      If a character's name is "vertcid_&lt;cid&gt;" where &lt;cid&gt; should be
	      replaced by a number, then that character will be replaced by a rotated version
	      of &lt;cid&gt;
	    <LI>
	      If a character's name is "vertuni&lt;uni&gt;" where &lt;uni&gt; should be
	      replaced by a 4 hex-digit number, then that character will be replaced by
	      a rotated version of the unicode character &lt;uni&gt;.
	  </UL>
	<LI>
	  When saving a font with rotated characters FontForge will now generate a
	  vrt2 feature in the GSUB table (this lets the font's users find out about
	  the rotated glyphs.
	<LI>
	  Before this FontForge would only read entries in the 'name' table which were
	  in unicode (or macroman). FontForge is a bit more general now and will read
	  the other encodings it knows about.
	<LI>
	  Oops. Another screw up reading in open type.
	<LI>
	  If the character at encoding 0 was not .notdef then FontForge would omit
	  it when generating a postscript/opentype font.
      </UL>
    <LI>
      26-Nov-2001
      <UL>
	<LI>
	  Adobe has upgraded their cid version for traditional chinese, so I generated
	  a new cidmap to reflect that. I've also cleaned up most of the others.
	<LI>
	  Initial version of vertical metric support.
	  <UL>
	    <LI>
	      (only in true/open type fonts)
	    <LI>
	      Added ability to set the vertical advance of each character
	    <LI>
	      Added ability to set the vertical origin (as an offset from the origin in
	      the design coordinate system (which happens to be the origin for horizontal
	      metrics)).
	    <LI>
	      Added ability to set the line gap (er, column gap?)
	    <LI>
	      What else do I need?
	  </UL>
      </UL>
    <LI>
      24-Nov-2001
      <UL>
	<LI>
	  Oops. Urich Klauer found a bug in my parsing of ttf/otf tables (introduced
	  by the linegap change on 8 Nov) and sent a patch.
	<LI>
	  FontForge was erroneously complaining that all ttf composite glyphs were
	  too big (when reading them in, introduced 15 Nov).
	<LI>
	  FontForge stored StdHW and StdVW in the wrong format when reading opentype
	  fonts and any .pfa/b fonts generated from that db caused ghostview problems.
      </UL>
    <LI>
      23-Nov-2001
      <UL>
	<LI>
	  Fixed a potential crash from popups in the fontview.
	<LI>
	  Fixed three crashes in remove overlap (there are more problems)
	<LI>
	  Added support for reading/writing mixed 8/16 bit encodings. (used in some
	  CJK fonts)
	<LI>
	  Added support for big5, johab (johab is untested, big5 minimally)
	<LI>
	  Improved treatment of ttf encodings we don't understand.
	<LI>
	  Added a command to move to the next defined character (useful in CJK encodings
	  with great holes in the middle. Unicode too I suppose)
	<LI>
	  Added a resource (<A HREF="xres.html">fontforge.FontView.FontFamily</A>)
	  to control the font for the character labels that appear above every user
	  defined character.
	<LI>
	  FontForge now supports multi-line copyright notices (must be less that 2000
	  ascii characters though).
      </UL>
    <LI>
      17-Nov-2001
      <UL>
	<LI>
	  Changed the configure script to deal with Mac OS/X properly (I hope)
      </UL>
    <LI>
      15-Nov-2001
      <UL>
	<LI>
	  FontForge had a bug when loading some ttc files which caused it to crash.
	<LI>
	  FontForge wasn't prepared for the erroneous truetype found in wcl-02.ttf,
	  this caused a crash. FontForge should do better now.
	<LI>
	  FontForge's scrollbars didn't work very well. Should be much improved now.
	<LI>
	  FontForge used to generate an entire antialiased bitmap font to display in
	  the fontview window. Now it only generates the images when it needs them.
	  This speeds up the loading of large fonts and reduces their memory requirements.
      </UL>
    <LI>
      12-Nov-2001
      <UL>
	<LI>
	  Some nearly horizontal (but non-linear) splines could not be selected.
	<LI>
	  Changed the point info dlg so that users could set points back to have default
	  control points.
	<LI>
	  There was a pathway whereby points could be marked as having default control
	  points even when they didn't. That one is plugged.
	<LI>
	  The chinese font, kaui contains some interesting bugs which we've had to
	  work around:
	  <UL>
	    <LI>
	      Glyph 257 contains a contour consisting of one off-curve point.
	    <LI>
	      The encoding cmap refers to non-existent glyphs
	    <LI>
	      The fpgm attempts to move points around (it isn't allowed to do that according
	      to the docs)
	  </UL>
      </UL>
    <LI>
      11-Nov-2001
      <UL>
	<LI>
	  Added support for macintosh resource fonts (by reading them from and writing
	  them to macbinary wrapped files)
	<LI>
	  Fixed a bug in metricsview where pasting with more than one character caused
	  a crash.
      </UL>
    <LI>
      8-Nov-2001
      <UL>
	<LI>
	  FontForge will now save ligature information in the GSUB table when creating
	  an opentype font.
	<LI>
	  When double clicking on a previously unused character, FontForge would not
	  set the default ligature properly.
	<LI>
	  FontForge would crash if you merged a font containing ligature information
	  into another one (or diagonal stems or minimum distances).
	<LI>
	  When opening some bdf files, fontforge would display nothing until you resized
	  the window.
	<LI>
	  Added the ability to set the TTF linegap fields. There are two of them (one
	  in OS/2 and one in hhea). I don't understand the distinction between them,
	  so I set both to the same value.
	<LI>
	  When merging fonts, characters which did not fit in the current encoding
	  would be placed immediately after the last character with something in it.
	  The intent was that they should go to an unused slot outside of the encoding
	  rather than within. This has been fixed.
	<LI>
	  I've added a preference item allowing you to configure the separation between
	  the base character and the accent in the Build Accented Character command.
	  I've also changed it so that if the character is close to the x-height or
	  the cap height, the accent is positioned as if the character were at the
	  x-height (or cap height), this means the accents will be at a consistent
	  level rather than slightly ragged.
	<LI>
	  I moved the Make First command to the Point menu.
	<LI>
	  Added a command to copy the splines in the foreground layer into the background
	  layer.
      </UL>
    <LI>
      2-Nov-2001
      <UL>
	<LI>
	  FontForge would not notice certain disk errors when generating truetype fonts.
	  It should do better now.
	<LI>
	  FontForge could crash when generating postscript from a unicode font that
	  did not contain all the greek letters.
	<LI>
	  Fixed a display bug in the metrics view.
	<LI>
	  FontForge should not be able to read in an opentype GPOS table and extract
	  kerning information from it.
	<LI>
	  FontForge will now put kerning info into the GPOS table when saving an opentype
	  font. TrueType fonts will still put kerning info into the kern table.
      </UL>
    <LI>
      31-Oct-2001
      <UL>
	<LI>
	  Added a command to remove width MDs &amp; changed ttf generation to check
	  if there were any width MDs before setting the "metrics depend on pointsize"
	  flag in the head table.
	<LI>
	  Improved (I hope) placement of palettes under default gnome.
	<LI>
	  There was a bug in my otf read in of 'hflex1' instructions which warped some
	  otf fonts badly.
      </UL>
    <LI>
      29-Oct-2001
      <UL>
	<LI>
	  Change type1 encoding vectors so that they start with a for loop setting
	  everything to notdef. older versions of dvipdfm assume it's there
	<LI>
	  Added two new concepts to hinting which only apply to truetype:
	  <UL>
	    <LI>
	      You can specify that a certain point should be rounded to the grid in x or
	      y<BR>
	      (note: points on hints don't need this, they'll always be rounded)
	    <LI>
	      You can specify that the x or y distance between two points should never
	      vanish (this is called Minimum Distance)<BR>
	      (note: each hint implies one of these going from one side of the hint to
	      the other, also there is an implied one of these between any two non-overlapping
	      hints)<BR>
	      You can also specify that the distance between a point and the width should
	      never vanish. This means that there will always be at least one pixel between
	      that point and the advance width of the character.
	  </UL>
	<LI>
	  I removed the serif checker from the ttf instruction generator and moved
	  it to the autohinter (with some changes of course) and it now generates minimum
	  distances.
	<LI>
	  I added a minimum distance between the last stem of a character and the width.
	<LI>
	  I added a user interface to display and control these
	<LI>
	  I realized I was misinterpreting the ttf docs (again) and that IUP worked
	  better than I thought, and so I removed my own interpolation code (thank
	  you freetype! it is so good to see what the instructions do.)
	<LI>
	  Cleaned up some rather technical issues in the truetype instruction generation
	  occasioned by non-overlapping and non-intersecting hints.
	<LI>
	  FontForge will now read (but not produce) '.gsf' files. These are yet another
	  postscript format, like a pfa but without the eexec encoding. Ghostscript
	  uses them (others may, I think Wadalab did...).
	<LI>
	  Oops. In encodings containing characters with no defined postscript unicode
	  names, then the name generated for an unused character was wrong.
	<LI>
	  Oops. FontForge thought all user defined encodings were two byte encodings
	  and produced a warning message for them when generating type1 fonts.
	<LI>
	  Added a force encoding flag to the Font Info dlg. This is for those cases
	  where FontForge reads in a font but can't figure out what the proper encoding
	  is, then doing a force encoding will simply rename all the characters to
	  match what they should be in the chosen encoding.
	<LI>
	  Oops, neither afm nor bdf files were correctly normalized for fonts whose
	  em size wasn't 1000.
	<LI>
	  Improved bdf "CHARSET_COLLECTIONS" output.
	<LI>
	  Added a command to make two lines parallel
      </UL>
    <LI>
      21-Oct-2001
      <UL>
	<LI>
	  FontForge could crash when autohinting a diagonal hint.
      </UL>
    <LI>
      20-Oct-2001
      <UL>
	<LI>
	  FontForge generated awful instructions (hints) for truetype characters. I've
	  fixed some of the more egregious problems (I hope).<BR>
	  In particular:
	  <UL>
	    <LI>
	      Diagonal hints were completely broken
	    <LI>
	      Overlapping hints didn't work either
	    <LI>
	      Normal hints with more than one point on them sometimes had the second (third,
	      fourth...) point moved by the wrong amount.
	    <LI>
	      Points that weren't on any hints were often not interpolated properly.
	    <LI>
	      The serif code picked up on things which weren't serifs and tried to hint
	      them as though they were.
	  </UL>
	<LI>
	  I've written a <A HREF="http://mensis.sf.net/">tool</A> which will allow
	  you to look at what the instructions are and what they do.
	<LI>
	  TTF spline approximation (cubic-&gt;quadratic) should be twice as fast.
	<LI>
	  Clearing/Cutting a character with references from the font view corrupted
	  FontForge's internal state. If this were followed by a reduction in the number
	  of characters in the font (Element-&gt;Font Info-&gt;Encoding) a crash could
	  occur.
	<LI>
	  Clearing/Cutting a character with dependents from the font view now gives
	  the user the option of instanciating the character in all its dependents.
      </UL>
    <LI>
      11-Oct-2001
      <UL>
	<LI>
	  Hmm. Apple has some very strange things to say about how offsets and scaling
	  factors overlap in compound ttf glyphs. It is not well enough described (at
	  least when it applies to rotations) for me to implement it. Microsoft doesn't
	  do this. Great. OpenType gives a pair of bits to control this behavior (bit
	  11 set do it apple's way, bit 12 set do it MS way, neither set flip a coin
	  and guess, both set die in horrible agony). But still no description of exactly
	  what Apple does. So I've changed my ttf output routine always to set bit
	  12 in the composite flags. And the read in does something if it gets the
	  apple bit. Probably not the right thing though.
	<LI>
	  Fixed a potential problem clipping splines in the outline character display.
	<LI>
	  Added a warning when attempting to save a font with a two byte encoding into
	  a format that only supports one byte encodings (ie. unicode to pfb)
	<LI>
	  FontForge crashed when loading a bare bdf with more than 256 characters
	<LI>
	  FontForge used out of date versions of config.guess and config.sub. These
	  should be updated now.
      </UL>
    <LI>
      3-Oct-2001
      <UL>
	<LI>
	  Added support for saving bitmaps into ttf files. I don't know that I've got
	  it right. Windows Me ignores the bitmaps I put in. Windows may ignore all
	  bitmaps, or I may have done something wrong... There are so few files to
	  test bitmaps on though...
	<LI>
	  Some older systems have problems taking the cubed root of 0. This can pop
	  up in the Cubic Solution code now (when doing simplify for example). There
	  should be a work-around in place now.
	<LI>
	  On monospaced fonts FontForge generated a .notdef character whose width was
	  the em-square rather than the size of the rest of the font.
      </UL>
    <LI>
      1-Oct-2001
      <UL>
	<LI>
	  makefile wouldn't build ui files if "." wasn't in PATH environment variable.
	  Should be fixed.
	<LI>
	  Holding down the Shift key when invoking Element-&gt;AutoTrace will cause
	  it to prompt for command line arguments to the autotrace program (you have
	  to figure these arguments out yourself).
      </UL>
    <LI>
      30-Sept-2001/1-Oct-2001
      <UL>
	<LI>
	  Improved importing background bitmap fonts (scaling factor set more accurately,
	  pk characters whose bitmap width was a factor of 8 had problems).
	<LI>
	  Import width from background bitmap fonts if the outline character is empty.
	<LI>
	  Merge Fonts was disabled except under bizarre circumstances, should be fixed.
	<LI>
	  Makefiles should create the *.ui files now.
	<LI>
	  Mac encoding table should include the Euro character now (I was using an
	  old version which had the currency symbol instead).
      </UL>
    <LI>
      24-Sept-2001
      <UL>
	<LI>
	  <A HREF="Problems-MacOSX.html">Mac OS/X port </A>done (or at least a semi-working
	  version has been produced)
	<LI>
	  Localization didn't work if there was no preference file. 
	    <HR>
	<LI>
	  Can now read metafont pk files as bitmap fonts (Warning: No encoding on these
	  files, you've got to guess at the encoding before loading them).
	<LI>
	  Can now read kerning information from TeX .tfm files (Again, there's no encoding
	  in these guys, I just assume the font's encoding matches the tfm)
      </UL>
    <LI>
      22-Sept-2001
      <UL>
	<LI>
	  Can now read bitmap fonts out of a truetype EBDT (or bdat) table
	<LI>
	  Can import a bitmap and put it into the background of a font.
	<LI>
	  FontForge would sometimes get character widths wrong when reading a ttc file.
      </UL>
    <LI>
      19-Sept-2001
      <UL>
	<LI>
	  Major rewrite of Remove Overlap.
	<LI>
	  Fixed potential crash in autohint
	<LI>
	  I now find the intersection of a (cubic) spline and a line by the cubic algorithm
	  rather than by iteration.
      </UL>
    <LI>
      15-Sept-2001
      <UL>
	<LI>
	  Fixed more remove overlap/merge/simplify problems related to having many
	  points at the same location.
	<LI>
	  Fixed a bug in Point Info.
      </UL>
    <LI>
      14-Sept-2001
      <UL>
	<LI>
	  Fixed a couple more memory problems (caused by the chunk allocation), one
	  in remove overlap, one in autotrace
	<LI>
	  I'm told that yesterday's executable upload didn't work. Hope today's does
	  better
      </UL>
    <LI>
      13-Sept-2001
      <UL>
	<LI>
	  Fixed a crash when joining two paths
	<LI>
	  More tweaking of search path for ui files.
      </UL>
    <LI>
      11-Sept-2001
      <UL>
	<LI>
	  more configuration fixes
	<LI>
	  Fixed many simplify bugs
	<LI>
	  otf output would crash if given an open path. Fixed
      </UL>
    <LI>
      8-Sept-2001
      <UL>
	<LI>
	  Font View Paste has changed slightly. If the copy buffer contains more than
	  one character, and the selection is exactly one character, then the selection
	  will be changed so that it will exactly fit the copy buffer.
	<LI>
	  Also Font View Copy will copy the hints of the character.
	<LI>
	  Fixed a bug with reading CID keyed Type1 fonts
	<LI>
	  cleaned up some compilation problems on older systems (I hope)
	<LI>
	  Inserted Olaf's bug fix in gresource.c
	<LI>
	  Cleaned up behavior on zero-length splines
      </UL>
    <LI>
      5-Sept-2001
      <UL>
	<LI>
	  Ug. yesterday's install changes weren't complete. I forgot to remove the
	  old files from /usr/local/bin so fontforge used out of data translation tables
	  and things looked confused for non-English users. Also libgunicode had an
	  old version of some header files so there were compilation problems if this
	  was tar x'ed last (the other packages had the correct headers).
	<LI>
	  Also I posted a bad libgdraw source.
	<LI>
	  And got the dates wrong.
	<LI>
	  Added a tiny bit of German to the ui (hope it's right)
      </UL>
    <LI>
      4-Sept-2001 (but posted as 5-Sept-2001)
      <UL>
	<LI>
	  Menubar should be redrawn properly after a resize now.
	<LI>
	  File chooser should be smarter about retaining filenames after changing
	  directories.
	<LI>
	  Various fixes to support URW's odd habit of abbreviating everything to 4
	  characters (ie. recognize "obli" for "oblique", and "medi" for "medium")
	<LI>
	  Fixed a crash bug in postscript generation when character 0 was deemed worth
	  outputting
	<LI>
	  Tweaked XHeight calculation to look for greek/cyrillic "x"
	<LI>
	  Changed install process to put user-interface files into /usr/share/fontforge
	  instead of into the bin directory.
      </UL>
    <LI>
      1-Sept-2001
      <UL>
	<LI>
	  Small fixes to (my implementation of) Adobe Standard Encoding.
	<LI>
	  Small tweaks to get things to compile on solaris again.
      </UL>
    <LI>
      31-August-2001
      <UL>
	<LI>
	  If you dragged on a new spline, and then translated one or both of its end-points
	  the spline reverted to its default configuration
	<LI>
	  TTF files encoded in Wansung/SJIS will be read into a font encoded with either
	  KSC5601 or JIS208.
      </UL>
    <LI>
      30-August-2001
      <UL>
	<LI>
	  Fixed some bugs in otf output:
	  <UL>
	    <LI>
	      hintmasks were being output incorrectly, omitting bytes of data. This could
	      cause horrendous errors. If FontForge read in one of these fonts it would
	      often report "stack underflow".
	    <LI>
	      Another hintmask problem caused characters to be offset from where they should
	      be.
	    <LI>
	      Placing a hintmask between multiple [rhv]lineto s caused us to skip a line
	      segment
	    <LI>
	      cleaned up generation of subroutines (used to be extraneous rmovetos)
	    <LI>
	      If the user gave bad input to certain Private values (BlueValues for instance),
	      FontForge could go into an infinite loop.
	  </UL>
	<LI>
	  Non-CID otf fonts did not get their encodings read
	<LI>
	  Improved parsing of hints in a type1 font with hint substitution
	<LI>
	  Fixed a crash bug in Inserting a font (or a blank font) into a CID font
	<LI>
	  Generate font dialog would sometimes default to producing a CID keyed font
	  when it was not appropriate.
	<LI>
	  I got the ulCodePageRange bits wrong of the CJK codepages (which meant that
	  windows thought the wrong characters were in the font)
	<LI>
	  I generated a bad cmap (ttf encoding) table for CID keyed otf fonts.
	<LI>
	  If a TTF/OTF font is encoded with KSC5601 or JIS208 then I will give it a
	  Wansung / SJIS encoding in the cmap (if a unicode encoding is desired then
	  reencode as unicode).
	<LI>
	  Found format for afm files of CID fonts. Can now produce such for CID font
	  output.
	<LI>
	  Improved reference handling in type1s. If a reference doesn't fit into a
	  "seac" then try to use subroutines. Subroutines are possible if:
	  <UL>
	    <LI>
	      None of the references in the character use hint substitution (or flex
	      hints)<BR>
	      &nbsp; &nbsp; &nbsp; - or -
	    <LI>
	      Only one of the references uses hint substitution and it isn't translated
	      (not moved)
	  </UL>
	<LI>
	  Improved reference handling in type2s (opentype). Allow a reference to a
	  character with hint substitutions to go into a subroutine if none of the
	  other referenced characters use any hints at all, and the character with
	  hint substitutions is not translated.
	<LI>
	  Get Info was broken inside outline characters
	<LI>
	  Made an attempt to speed up handling of larger fonts. Only noticeable difference
	  I've seen is that it speeds up freeing the font.
	<LI>
	  Added a dialog to show what characters refer to the current character
	<LI>
	  Made a feeble attempt to sort out the confusion engendered by adobe's naming
	  conventions for greek letters.
	  <UL>
	    <LI>
	      if a font contains either the of the characters U+00B5 or U+03BC then when
	      saving the font FontForge ensures that characters with the names: "mu", "uni00B5"
	      and "uni03BC" are all present. Similarly for Delta, uni0394 uni2206 and Omega,
	      uni03A9 uni2126
	  </UL>
	<LI>
	  Added support for command line arguments which begin with "--".
	<LI>
	  Added -usage and -help arguments
	<LI>
	  Added -recover={none,auto,clean} to give you control over the autorecovery
	  process.
	  <UL>
	    <LI>
	      -recover=none means that the current run will not perform auto recovery but
	      will leave things so that the next run will do so. (Note: If you change a
	      font that will be recovered later, the results are indeterminate).
	    <LI>
	      -recover=auto default behavior
	    <LI>
	      -recover=clean cleans out the autorecovery directory
	  </UL>
	<LI>
	  extension guessing would do the wrong thing if we actually wanted to open
	  a font with no extension.
      </UL>
    <LI>
      8-August-2001
      <UL>
	<LI>
	  Some minor fixes to gchardlg.c
	<LI>
	  Try to upgrade the CJK translation tables to Unicode 3
	<LI>
	  Improve processing of ttc files (I can actually read one no)
	<LI>
	  chooser icon for cid-keyed fonts
      </UL>
    <LI>
      6-August-2001
      <UL>
	<LI>
	  KSC5601-1987 was still wrong.
	<LI>
	  Fixed a crash in FontInfo on CID fonts.
      </UL>
    <LI>
      4-August-2001
      <UL>
	<LI>
	  Eek. FontInfo-&gt;Panose,TTF Values never got stored into the font.
	<LI>
	  Also added access to Version, and UniqueID
	<LI>
	  Was given a TTf font with no fontname. This caused a crash. FontForge now
	  assigns a fontname if the font doesn't provide one.
	<LI>
	  Added support (well ability to read) for SJIS, Big5 and Wansung TTF encodings
	  (platform=3, specific=2,3,5)
	<LI>
	  After playing with large asian fonts I am now making (minimal) attempts to
	  conserve memory and have changed all my doubles to floats (it's configurable
	  of course, but default is float).
	<LI>
	  Fixed a number of bugs in open type output
	<LI>
	  Was using out of date Korean-&gt;Unicode conversion. Should be fixed now.
	<LI>
	  Initial support for <A HREF="cidmenu.html">CID keyed fonts</A>.
      </UL>
    <LI>
      26-July-2001
      <UL>
	<LI>
	  Added a constrain points command to align a collection of points, or to space
	  points evenly on a line.
      </UL>
    <LI>
      25-July-2001
      <UL>
	<LI>
	  Fixed a rare crash from closing the outline (or bitmap) view
	<LI>
	  Added a new problem to find problems
	<LI>
	  Fixed some small bugs in find problems
	<LI>
	  Oops. TrueType names came out in the wrong endianness.
      </UL>
    <LI>
      24-July-2001
      <UL>
	<LI>
	  Although the family name accepted spaces, it then silently removed them.
	  No longer. (I hope)
	<LI>
	  FontForge is now more careful when you attempt to clear a character from
	  the font view which has dependents (at least one of which is not being cleared
	  itself). It will warn you and allow you not to clear that character.
	<LI>
	  FontForge is also more careful when you attempt to paste a reference to a
	  character that does not exist in the current font. Before it silently ignored
	  it. Now it will warn you and give you the option of pasting the outlines
	  of the original character being refered to (if it can find that character).
	<LI>
	  Fixed an uninitialized variable in print that could cause things to go into
	  an infinite loop.
	<LI>
	  Fixed a rounding error problem in ttf generation that could cause an infinite
	  loop.
	<LI>
	  Small bitmap fonts will be magnified in the font view
	<LI>
	  Expand Stroke didn't work on counter-clockwise triangles (presumably other
	  shapes, but I didn't check). It also would randomly leave paths counter-clockwise
	  when they should have been clockwise.
	<LI>
	  Finally!<BR>
	  Often when joining two paths (or closing one path) the point would jump when
	  you released the mouse. I finally figured out why.
      </UL>
    <LI>
      22-July-2001
      <UL>
	<LI>
	  wrote a unicode printf which is now used by most of the error routines. Should
	  be no visible difference to users.
	<LI>
	  cleaned up the truetype names aspect of the font info dlg.
	<LI>
	  Added a Translate Styles button to the above aspect if the string is Style
	  and the language is American English. (Sorry about the linguistic chauvinism)
	<LI>
	  Allowed spaces in the PostScript family name again
	<LI>
	  Fixed a bug where the "lpr" radio button would sometimes be disabled.
	<LI>
	  Various other small improvements to "Print".
	<LI>
	  The "Clockwise" detector failed on some paths. I've rewritten it, it should
	  work better now.
	<LI>
	  The clockwise detector in find problems also needed to be rewritten.
	<LI>
	  Added a Find Problems detector for almost horizontal/vertical control points.
	<LI>
	  Some improvements to metafont (well, a few characters look better anyway,
	  I hope it's an improvement). It still doesn't work of course.
      </UL>
    <LI>
      17-July-2001
      <UL>
	<LI>
	  Using almost any stringized error routine would munch memory. Many inexplicable
	  errors resulted. I hope it is now fixed and that FontForge is stable again.
	<LI>
	  Valek's improvements to Find Problems
	<LI>
	  Valek's russian version of "A quick brown fox..."
	<LI>
	  use textarea gadget for Font's copyright notice.
      </UL>
    <LI>
      16-July-2001
      <UL>
	<LI>
	  FontForge did not do a very good job of guessing at where hints should be
	  active when they were supplied by the user. Should do better now.
	<LI>
	  More tuneups for autohint.
	<LI>
	  Added a command to the outline view to allow you to set the "First Point"
	  of each spline set. This is important for Interpolate font.
	<LI>
	  Fixed a bug in Font Reencoding having to do with references.
	<LI>
	  Added direction detection to Find Problems (to make sure outer paths are
	  clockwise)
	<LI>
	  Cleared selections between explanations on Find Problems
	<LI>
	  Gave some indication of how near horizontal/vertical lines are wrong in find
	  problems
	<LI>
	  Fixed a crash in MetaFont
	<LI>
	  Added a progress indicator to MetaFont
	<LI>
	  Added some more to the print sample text (bulgarian, macedonian, welsh, czech,
	  lithuanian, polish, slovene)
	<LI>
	  Stringized some more files
      </UL>
    <LI>
      15-July-2001
      <UL>
	<LI>
	  FontForge should now be able to read truetype collection files and do something
	  reasonable --<BR>
	  At least in theory. I don't have any truetype collection files to test on.
	<LI>
	  Oh dear. The rasterizer was looking at vertical hints when it should have
	  looked at horizontal ones, looking at no hints when it should have looked
	  at vertical ones. The result was that vertical edges weren't found.
	<LI>
	  FontForge had problems reading in lone bdf fonts with strange encodings.
	<LI>
	  Cleaned up print behavior slightly on systems without ghostview
	<LI>
	  Find Problems would not always stop immediately after pressing the stop button.
	<LI>
	  more files stringized
      </UL>
    <LI>
      11-July-2001
      <UL>
	<LI>
	  Eek! Memory problem in metrics view (writing beyond what was allocated).
	  Fixed now.
	<LI>
	  There is scrollbar in the metricsview again. This time it actually does
	  something.
      </UL>
    <LI>
      10-July-2001
      <UL>
	<LI>
	  Did significant improvement to arabic ligature creation (at least it's done
	  right to left now and the proper forms will be picked).
	<LI>
	  Improved the character icons of Anti-Aliased fonts.
	<LI>
	  Oops. FontInfo would mistakenly complain about modifiers like "-Bold". Fixed.
	<LI>
	  There's the start of a <A HREF="MetaFont.html">command to change the weight
	  of a font</A>. It doesn't work very well yet. It probably never will work
	  perfectly, but I hope it may eventually be useful.
      </UL>
    <LI>
      7-July-2001
      <UL>
	<LI>
	  Fixed a crash when referring to a character whose encoding was bigger than
	  65535
	<LI>
	  Rewrote the <A HREF="fontinfo.html">Font Info</A> dlg.
	  <UL>
	    <LI>
	      Made the dialog controlled by tabs instead of trying to show everything at
	      once.
	    <LI>
	      Merged the private info dlg into it
	    <LI>
	      Provided access to some ttf settings which were previously hidden
	    <LI>
	      Provided access to the ttf name table (which allows you to give the font
	      and its styles different names on different languages. So CaslonItalic could
	      be CaslonItalique in French and CaslonKursive in German.
	  </UL>
      </UL>
    <LI>
      30-June-2001
      <UL>
	<LI>
	  Fixed another crash from putting strings in resources.
	<LI>
	  Added a snap-to feature on horizontal/vertical lines in the grid (guide)
	  layer.
	<LI>
	  Missing a few files in the distribution of the 28th.
      </UL>
    <LI>
      28-June-2001
      <UL>
	<LI>
	  Oops. Now all empty characters are nameless, not just controls.
	<LI>
	  Many improvements to <A HREF="problems.html">find problems</A>.
	<LI>
	  Added some new shortcuts to the menus.
      </UL>
    <LI>
      27-June-2001
      <UL>
	<LI>
	  When generating truetype (or opentype) fonts, FontForge failed to set the
	  ulCodePageRange for encodings other than latin1/latin2. Should do a better
	  job now.
	<LI>
	  Fixed a crash introduced by decompress.
	<LI>
	  Fixed a crash when trying to merge two paths (by moving them with the mouse)
	  when the stationary "path" consisted of exactly one point.
	<LI>
	  Sometimes control characters would be named "uni0001" (etc.) rather than
	  ".notdef". Appropriate, but inconsistent. They should now always be called
	  ".notdef" (unless explicitly renamed).
      </UL>
    <LI>
      24-June-2001
      <UL>
	<LI>
	  Change configure script to work on solaris
      </UL>
    <LI>
      23-June-2001
      <UL>
	<LI>
	  Make giofile.c compile on solaris
	<LI>
	  Fix crash in autohint
	<LI>
	  Decompress compressed font files automagically before loading them
	<LI>
	  Update russian version.
      </UL>
    <LI>
      21-June-2001
      <UL>
	<LI>
	  Copy Width did not work from the font view
	<LI>
	  made the info display in the outline view more legible if the locale used
	  "," as decimal point.
	<LI>
	  One more attempt to get palettes right. They would disappear if you went
	  to a non-outline view window and then returned to that same window.
	<LI>
	  Some useful information will now be displayed in the outline view as you
	  add points to a path.
	<LI>
	  And during rectangle, ellipse, polygon and star generation.
	<LI>
	  Build Composite Char will now create the characters 0x2000-0x2015 (spaces
	  and rules) if you ask it to.
	<LI>
	  Fixed several bugs caused by the resource string changed.
	  <UL>
	    <LI>
	      This one showed up in font info when removing characters.
	    <LI>
	      And this on adding an encoding (to font info).
	    <LI>
	      Any simple request for a string got two OK buttons (ie. no Cancel)
	  </UL>
	<LI>
	  Added some more strings.
	<LI>
	  Cleaned up the hint translation code to work with the new (ie. hint substitution,
	  diagonal)
	<LI>
	  Improved UI for metrics view as per Valik's suggestions
	  <UL>
	    <LI>
	      Before it would wait until you depressed the mouse before changing the cursor,
	      now it changes the cursor as you move.
	    <LI>
	      Better cursors (separate cursors for kerning, setting rbearing (== width),
	      setting lbearing)
	    <LI>
	      Selected character is drawn in a different color.
	  </UL>
	<LI>
	  Implement ghost/edge hints. (Oops)
      </UL>
    <LI>
      19-June-2001
      <UL>
	<LI>
	  Initial version of russian menus
	<LI>
	  Recently AutoHint would remove control points from splines which traced out
	  a line (ie. if the control points were on the line segment between the two
	  end points). AutoHint shouldn't muck with things like that. And anyway it
	  got it wrong in several cases.
	<LI>
	  The simplify command will now remove collinear control points from a spline.
	  And if you hold down the shift key when invoking the menu the simplify command
	  will only do this (and will change its name to cleanup).
      </UL>
    <LI>
      18-June-2001
      <UL>
	<LI>
	  Oops. FontForge looked in the current directory, not the executable's directory
	  for the ui files. Should be looking in the executable's dir.
	<LI>
	  Oops. The "font has changed" dialog caused a crash.
	<LI>
	  The simplify command will remove control points if the spline traces out
	  a line.
	<LI>
	  Cleaned up diagonal hints
	<LI>
	  Made a change to menus which might fix Valek's menu crash. Or might not.
	<LI>
	  Added some more strings to the ui files (yesterday files can't be used any
	  more)
	<LI>
	  Cleaned up some problems with the metrics view.
      </UL>
    <LI>
      17-June-2001
      <UL>
	<LI>
	  Added a minimal help menu
	<LI>
	  If the Hint menu was invoked when there were not exactly two points selected,
	  then fontforge would crash. Fixed
	<LI>
	  Created a superstructure to allow localization of the UI. Created a small
	  (incomplete, probably wrong in many places) french ui.
      </UL>
    <LI>
      13-June-2001
      <UL>
	<LI>
	  Palettes would vanish when the first outline character view was closed. That
	  should be fixed.
	<LI>
	  Palettes should (I hope) do a better job of tracking windows.
	<LI>
	  Fixed another clipping problem
	<LI>
	  Added support for diagonal stems (for truetype instructioning. Not supported
	  by postscript hints)
	  <UL>
	    <LI>
	      AutoHint finds them
	    <LI>
	      There's a Clear DStem command, and an Add DStem
	    <LI>
	      Review Hints does not display them (they can't be described the same way
	      as H and V stems).
	  </UL>
	<LI>
	  Changed the background color to be dark green so it will stand out against
	  a filled character
	<LI>
	  Previously if FontForge were given a corrupted font with no font name it
	  would crash. That should be fixed.
      </UL>
    <LI>
      11-June-2001
      <UL>
	<LI>
	  Added ability to create a pfm file (for ATM under windows)
	<LI>
	  Extended Font Info to allow you to set the FullName (the human readable font
	  name) from FontInfo
	<LI>
	  Two bugs with hint substitution code:
	  <OL>
	    <LI>
	      It would occasionally generate one subr containing overlapping hints
	    <LI>
	      It would create a Subrs array much bigger than needed. For some reason xfs
	      had conniptions over the blank (but unused) entries
	  </OL>
      </UL>
    <LI>
      6-June-2001
      <UL>
	<LI>
	  Cleaned up Exit, close and fontinfo commands to avoid possible race conditions.
      </UL>
    <LI>
      5-June-2001
      <UL>
	<LI>
	  Added a command to look for common problems
	<LI>
	  Fixed a crash caused by removing character slots from a font (using Number
	  of Characters in Font Info)
	<LI>
	  Fixed a crash caused by reading in a ttf file where the kerning info specified
	  a non-existent glyph
	<LI>
	  Fixed a crash caused by reading in a pf* file where the encoding was specified
	  in a slightly different format from the one we expect
	<LI>
	  Palettes should be controllable again.
	<LI>
	  Menu shortcuts should be available from palettes
      </UL>
    <LI>
      12-May-2001
      <UL>
	<LI>
	  That was a stupid idea (yesterday's). I've backed it out. Instead I've done
	  what Val asked for -- all windows share common palettes.
      </UL>
    <LI>
      11-May-2001
      <UL>
	<LI>
	  Made a preference item so that palettes could live within the outline view.
	  It's sort of a temporary hack until I get palettes working (if ever) so it
	  isn't really well integrated with things...
      </UL>
    <LI>
      10-May-2001
      <UL>
	<LI>
	  Fixed a crash bug which occurred when doing Transformations with the origin
	  set to Center of Selection (default) in a character with an unclosed path.
	<LI>
	  Fixed a similar crash when generating postscript.
	<LI>
	  And another when updating control points.
	<LI>
	  Added much to printing, should be done for now.
	<LI>
	  Valrk Filippov suggested that things should be constrainable to angles other
	  than horizontal, vertical and 45. In particular constraining to the ItalicAngle
	  of an Italic/Oblique font is very useful. So we do that now. Thanks Val!
      </UL>
    <LI>
      7 May 2001
      <UL>
	<LI>
	  Fixed more locale problems (I hope)
	<LI>
	  Info line should show the location of a point moved with the arrows.
	<LI>
	  Added Next/Prev Point commands
	<LI>
	  Added a Print to file command that displays the entire font, or fills a page
	  with the current character. More options to follow.
	<LI>
	  Fixed a bug in seac output
	<LI>
	  Fixed an introduced crash bug in hint output
	<LI>
	  Fixed a crash bug caused by increasing the number of characters allowed in
	  the font with FontInfo.
      </UL>
    <LI>
      6 May 2001
      <UL>
	<LI>
	  Redid <A HREF="hinting.html">hinting</A> to support hint substitution and
	  counter hinting in PostScript (&amp; opentype)
	  <UL>
	    <LI>
	      Hints now have an extent in both dimensions, indicating over what parts of
	      a character they should be active.
	    <LI>
	      Dotted lines are used to show the extent of a hint in the primary dimension
	    <LI>
	      I draw horizontal hints and vertical hints in different colors now, otherwise
	      it was too confusing guessing which was which.
	    <LI>
	      If a hint conflicts with another its dotted lines are shown in cyan (rather
	      than light blue/green)
	    <LI>
	      When the Review hints dlg is active the current hint is shown in dark blue/green.
	    <LI>
	      The Review hints dlg shows whether a hint overlaps (conflicts with) another.
	    <LI>
	      Auto Hinting will generate a list of all horizontal and vertical stems, and
	      then use some heuristics to remove some of the more annoying and less useful
	      stems from the Hint list. If you don't want this automatic pruning then holding
	      the Shift key down when you invoke AutoHint from the menu will leave you
	      with the full stem list.
	    <LI>
	      Minor changes to truetype output to deal with the new hint list.
	    <LI>
	      Major changes to PostScript output to deal with counters and hint substitution
	    <LI>
	      <FONT COLOR="Red"><STRONG>No longer saves Type1 charstrings when loading
	      a type1 font</STRONG></FONT>
	  </UL>
	<LI>
	  The icon for outline character windows was <EM>still</EM> wrong for anti-alias
	  fonts if there were no bitmap fonts installed. Sigh.
	<LI>
	  Added a Correct Direction command to the font view.
	<LI>
	  Fixed many bugs with Correct Direction
	<LI>
	  Improved accent placement when we have serifs (I hope), don't want to center
	  on top serif of "i" for example.
	<LI>
	  Slight improvements when pasting bitmaps.
	<LI>
	  Oops. 0x2d should be "hyphen" in the Adobe Standard Encoding rather than
	  "minus" as I had it.
      </UL>
    <LI>
      3 May 2001
      <UL>
	<LI>
	  Opps. Generating postscript could crash if there were many blank characters.
	<LI>
	  <FONT COLOR="Red"><STRONG>This is the last version which will allow you to
	  make small modifications to fonts while retaining the original hint
	  substitution</STRONG></FONT>
      </UL>
    <LI>
      28 Apr 2001
      <UL>
	<LI>
	  Transform from the font view will (for some transformations and if
	  <A HREF="editmenu.html#From">Copy From</A> is set to All Fonts) transform
	  the bitmap associated bitmap characters as well as the outline characters.
	<LI>
	  Cleaned up Build Accented character so that it behaves consistently between
	  font/outline views, works with Copy From. The two different aspects of the
	  command (Accented vs. Composite) are now controlled by whether the Shift
	  key is down when the menu is invoked.
	<LI>
	  Some more locale tweaking for reading in/writing out postscript.
	<LI>
	  The Preference encoding for new fonts didn't work if set to a user defined
	  encoding. Should be fixed now.
      </UL>
    <LI>
      27 Apr 2001
      <UL>
	<LI>
	  Tangent points should display a little better now.
	<LI>
	  If a font is a 94x94 CJK font then the LanguageGroup field of the Private
	  dictionary will be set to 1.
	<LI>
	  Fixed a recently introduced crash bug that happens on non-unicode fonts with
	  accented characters.
	<LI>
	  If a character contained a reference and that character could not be converted
	  into a seac then there would be no hints for the reference. That should be
	  fixed now.
	<LI>
	  Accented bitmaps should be positioned better now.
	<LI>
	  Added a couple of progress indicators to font level operations (transform,
	  paste, etc.)
	<LI>
	  Expand stroke didn't work from the font view.
      </UL>
    <LI>
      23 Apr 2001
      <UL>
	<LI>
	  Fixed a clipping problem
	<LI>
	  Redid a change from yesterday. It should now work for the stuff that used
	  to work (as well as for what I fixed yesterday)
	<LI>
	  (moved to
	  <A href="http://sourceforge.net"><IMG SRC="http://sourceforge.net/sflogo.php?group_id=25752&amp;type=1"
	      WIDTH="88" HEIGHT="31" BORDER="0" ALT="SourceForge Logo"></A>)
      </UL>
    <LI>
      22 Apr 2001
      <UL>
	<LI>
	  Added code to allow users to select more than one bitmap font at a time to
	  be imported into an sfd.
	<LI>
	  Cleaned up opening a bdf file.
	<LI>
	  Fixed various crash bugs dealing with missing bitmap characters where there
	  were outline characters.
	<LI>
	  Fixed various problems with building greek accented characters (Unicode 3's
	  decompositions are no longer helpful)
	<LI>
	  Added some support for
	  <A HREF="http://partners.adobe.com/asn/tech/type/type/corporateuse.txt">Adobe's
	  documented corporate use</A> characters (Small Caps, Old Style numbers...)
	<LI>
	  Cleaned up the outline character's icon (got broken when I added anti-aliasing)
	<LI>
	  em space character kept vanishing. Fixed that.
	<LI>
	  Fixed many other small bugs.
      </UL>
    <LI>
      20 Apr 2001
      <UL>
	<LI>
	  Addition improvements to the handling of format0 (1byte) encodings
	<LI>
	  Put a Symbol encoding into the FontInfo encoding list.
	<LI>
	  Oops. Ligature's had their semi-colons in the wrong place in afm files.
      </UL>
    <LI>
      19 Apr 2001
      <UL>
	<LI>
	  Yesterday's builds were transferred as ASCII not BINARY and are totally useless.
	<LI>
	  Added a macintosh encoding to ttf output
	<LI>
	  Slight improvement to ttf output (I hope)
      </UL>
    <LI>
      18 Apr 2001
      <UL>
	<LI>
	  Crash when reading a ttf font fixed (introduced by ligature code).
	<LI>
	  Crash when generating almost any postscript Type1 font (recently introduced)
	<LI>
	  Added code to read ligature information from the TTF/OTF GSUB table.
	<LI>
	  List buttons near the bottom of the screen would popup their list in
	  inappropriate places.
	<LI>
	  Fixed two bugs in cubic-&gt;quadratic spline conversion.
	<LI>
	  Added support for TrueType Symbol encodings
      </UL>
    <LI>
      17 Apr 2001
      <UL>
	<LI>
	  Menus would go into an infinite loop if you: depressed the mouse on the menu
	  bar (and pulled down a menu) and then moved the mouse so that it was above
	  the menubar when the menu was below it. Should be fixed.
      </UL>
    <LI>
      12 Apr 2001
      <UL>
	<LI>
	  Added a submenu of recent files and a pull down list in the open dlg.
	<LI>
	  Added stuff to put ligature info into an afm file (But not the GSUB table
	  of ttf/otf)
      </UL>
    <LI>
      10 Apr 2001
      <UL>
	<LI>
	  Fixed a crash bug when making an encoding from a font with a non-unicode
	  character in it.
	<LI>
	  Reencoding a font got confused if the new encoding contained more than one
	  instance of the same glyph (common example is to have both 0x20 and 0xA0
	  point to space) or if it contained a non-unicode character. This should be
	  fixed now.
	<LI>
	  Fixed a couple of problems with reading otf files
	<LI>
	  Added ability to save an Open Type font
	<LI>
	  Added a "Round to Int" command
	<LI>
	  .sfd files contain decimal points. This means they are locale specific. Changed
	  the input routines so that it would accept either "." or "," as a decimal
	  point.
      </UL>
    <LI>
      2 Apr 2001
      <UL>
	<LI>
	  FontForge provides some support for XUIDs
	<LI>
	  FontForge now has a button in the font info dialog which may be able to guess
	  the italic angle for the font.
	<LI>
	  AutoWidth/Kern didn't work well when the font was missing "A"
	<LI>
	  AutoWidth/Kern didn't work well when the font was italic/oblique
	<LI>
	  Build Accented Character didn't work too well when the font was italic/oblique
	<LI>
	  Previously opening a Type1 font failed to read /OtherSubrs correctly
	<LI>
	  Oops. In the Open Font Dialog, typing a wildcard changed the default button
	  to [New] rather than [Filter]. And pressing on [Filter] caused a crash.
	<LI>
	  Added ability to open an Open Type font (PostScript Type2 in a TrueType wrapper)
      </UL>
    <LI>
      29 Mar 2001
      <UL>
	<LI>
	  It is now possible to edit bdf fonts directly (without first creating a dummy
	  postscript font to contain them)
	<LI>
	  Fixed crash bug under kde
      </UL>
    <LI>
      28 Mar 2001
      <UL>
	<LI>
	  Made it possible to for the user to new encodings
	<LI>
	  (added TeX base encoding)
	<LI>
	  slight improvements to the palette code
      </UL>
    <LI>
      26 Mar 2001
      <UL>
	<LI>
	  Fixed a clipping problem in the Metricsview
	<LI>
	  Fixed various other display problems in Metrics
	<LI>
	  Fixed various display problems in the fontview
	<LI>
	  Added "Remove All Kern Pairs" menu item
	<LI>
	  Fixed Auto Kern yet again
	<LI>
	  Added a preference item to control the foundry name for generated bdf fonts.
      </UL>
    <LI>
      25 Mar 2001
      <UL>
	<LI>
	  Oops. Fixed a typo in auto-kerning code. It should work now...
	<LI>
	  From the outline view, exporting to a bmp file allows you to save an anti-aliased
	  character as well as a bitmap.
	<LI>
	  The Generate Fonts command allows you to save anti-aliased greymap fonts.
	  The format they are saved in was invented by me an hour ago so it's totally
	  useless (it's exactly the same as bdf except there's one extra header
	  "BITSPERPIXEL" which may be 1, 2, 4 or 8 (1 would be the same as bdf), and
	  the number of pixels packed into a byte is 8/BITSPERPIXEL (so 8, 4, 2 or
	  1 respectively).
	<LI>
	  If you selected "No Outline font" in the Generate fonts dialog, it would
	  generate a postscript font anyway. This has been fixed.
      </UL>
    <LI>
      24 Mar 2001
      <UL>
	<LI>
	  AutoKerning now lets you specify the number of kerning pairs the font may
	  have.
	<LI>
	  I'm told that ttf fonts can only have 2048 kerning pairs, so if a font has
	  more, the ttf generator will only save the 2048 ones with the biggest (absolute)
	  kerning offset.
	<LI>
	  Fixed a bug in autowidth (would make some characters far too wide).
	<LI>
	  Fixed a bug in autokern which caused it to kern things too closely together.
	  This also reduced the number of kern pairs generated.
	<LI>
	  Fixed a crash when loading a truetype font (if a glyph's start point and
	  end point were both off-curve points then the point between them was interpolated
	  incorrectly).
	<LI>
	  FontForge should now work with XFree 4.0.* before it would crash after putting
	  up the splash screen.
      </UL>
    <LI>
      21 Mar 2001
      <UL>
	<LI>
	  Fixed yet another remove overlap bug.
      </UL>
    <LI>
      12 Mar 2001
      <UL>
	<LI>
	  a number of small improvements
	<LI>
	  fixed a crash bug (occurred when holding down the alt key, using the pointer
	  tool, and no reference was selected)
      </UL>
    <LI>
      9 Mar 2001
      <UL>
	<LI>
	  Fixed a small bug in the hinting of glyph 0 (the unknown character)
	<LI>
	  Added "rulers" to the character outline view
	<LI>
	  Expanded the abilities of the postscript importer
	<LI>
	  Fixed yet another clipping bug.
	<LI>
	  Fixed a problem displaying tangent points when the control point was less
	  than 1 unit away
	<LI>
	  Provides an interface to the autotrace program to autotrace background images
	<LI>
	  Fixed a crash when drawing large images.
	<LI>
	  Fixed a problem with detecting clockwise paths.
	<LI>
	  Fixed a bug with reading in Type3 fonts
      </UL>
    <LI>
      5 Mar 2001
      <UL>
	<LI>
	  Minimal truetype instructing (hinting) is now in place.
	  <TABLE CELLPADDING="2" BORDER=1>
	    <TR>
	      <TD><P ALIGN=Center>
		<IMG SRC="HI.nohints.png" WIDTH="44" HEIGHT="28"><BR>
		no hints</TD>
	      <TD><P ALIGN=Center>
		<IMG SRC="HI.hints.png" WIDTH="44" HEIGHT="28"><BR>
		hints</TD>
	    </TR>
	  </TABLE>
	<LI>
	  This includes applying instructions to all points that lie on the Hints generated
	  for PostScript, a certain amount of extra effort to detect serifs, and
	  application of the PostScript BlueValues to the TrueType cvt.
	<LI>
	  AutoHint has been improved for some characters again.
      </UL>
    <LI>
      4 Mar 2001
      <UL>
	<LI>
	  When Get Info is applied to a single selected reference character the dialog
	  now has a button which will bring up a window displaying the character refered
	  to.
	<LI>
	  The Font View now displays info on the current character
	<LI>
	  Selecting by dragging out a rectangle in the character outline view would
	  sometimes miss points. I think that's fixed.
	<LI>
	  Doing a multi-character copy in the fontview would remove non-existent characters
	  from the copy set. They are no longer removed.
	<LI>
	  Build Accented character would always use a dotlessi when building an character
	  based on an "i". This behavior is only correct if the accent added is above
	  the letter. Adding an ogonek for example should retain the dot. This is now
	  fixed. (In theory the same problem could occur for j, but I don't think there
	  are any cases where it does).
	<LI>
	  When generating a type1 font FontForge will detect whether Flex hints can
	  be used and use them if appropriate.
	<LI>
	  There was a bug in the routine that read in flex hints. It would leave behind
	  6 extra points not on any path in most characters with a flex hint. These
	  points were not harmful, but they should not have been there.
	<LI>
	  I found some cases where autohint picked the wrong hints. I cleaned them
	  up. I hope I haven't broken others...
	<LI>
	  Fixed another clipping problem.
	<LI>
	  (Various experiments with instructing truetype have yielded no display
	  improvement)
      </UL>
    <LI>
      25 Feb 2001
      <UL>
	<LI>
	  FontForge no longer crashes on high-end systems where the default visual
	  has a smaller depth than the maximum the screen supports.
	<LI>
	  FontForge no longer crashes on systems with no bitmap unicode fonts installed.
	<LI>
	  When FontForge reads in a Type1 font it will preserve the original character
	  strings (the type1 strings that define the glyph shape) and will write them
	  out again when you save the font. If you modify a character (even something
	  innocuous like setting the width) the string for that character will be lost.
	  This means that any characters you do not modify will retain flex hints and
	  hint substitution. (the Subrs and OtherSubrs arrays are also preserved).
	<LI>
	  There is now a way to edit the entries in the Private dictionary (well most
	  of them. No way to edit the Subrs entry). The program will guess at good
	  values for some entries (like StdHW or BlueValues). If there is no BlueValues
	  entry present when a type1 font is generated then the program will guess
	  at good values (and will also guess at values for OtherBlues), otherwise
	  it will use the one supplied. Similarly for StdHW and StdVW (if StdHW is
	  absent then the program will guess at SnapStemH too, similarly for SnapStemV).
	  If UniqueID is present in the Private dictionary then that value will be
	  used in the font dictionary, if no UniqueID is present then the program will
	  generate a random number in the allowed range. 
	    <HR>
	<LI>
	  Removed a number of warnings from the code
	<LI>
	  Made arrow keys functional in the fontview
	<LI>
	  Changed type0 unicode generation so that if the font does not contain
	  U+2700-U+27FF the printer's own ZapfDingbats (if present) will be mapped
	  there.
	<LI>
	  Added Adobe Standard to the Font Info Encoding list.
      </UL>
    <LI>
      20 Feb 2001
      <UL>
	<LI>
	  Fixed some problems in saving both Type1s and TrueType fonts.
	<LI>
	  Added clipping code to the outline character view. (Before at magnifications
	  around 100 or so we'd run into overflow problems)
	<LI>
	  Added progress widget to font generation (and font database saving)
      </UL>
    <LI>
      13 Feb 2001
      <UL>
	<LI>
	  Fixed some problems with the configure script (handles libraries now)
	<LI>
	  Added a progress widget to show how things are going on long operations
	  (currently only font opens)
	<LI>
	  Fixed numerous small annoyances
	<LI>
	  Fixed a crash I introduced into build accented characters.
	<LI>
	  Fixed a couple of bugs in truetype generation
      </UL>
    <LI>
      11 Feb 2001
      <UL>
	<LI>
	  Added a configure script
	<LI>
	  Rearranged (simplified) the directory structure
	<LI>
	  Improved the build accented character function
	<LI>
	  (similar improvements to display of unicode text (in text fields, etc.) with
	  composing characters)
	<LI>
	  BiDi text was previously confused by composed characters and would put them
	  on the wrong letter. Fixed.
      </UL>
    <LI>
      9 Feb 2001
      <UL>
	<LI>
	  Tweaked some include files so fontforge might compile under Irix
	<LI>
	  Added anti-aliasing code to the font view.
	<LI>
	  Fixed bugs where server has 24bit depth but 32bit pixel size
	<LI>
	  Added a resource which turn palettes off (so they stop trying to steal focus
	  and stop trying to track the main window)
      </UL>
    <LI>
      7 Feb 2001
      <UL>
	<LI>
	  Some improvement in processing of postscript names in true type fonts (will
	  make truetype output marginally smaller in most cases)
	<LI>
	  Fixed a bug with popup menus.
	<LI>
	  Holding down the meta key allows you to drag (rather than resize) references
	  which fill the bounding box.
	<LI>
	  Improved saving of both postscript and truetype fonts when there are composite
	  characters referring to other composites.
	<LI>
	  Fixed bug in file chooser where typing into the listbox (to select a file)
	  made it think (sometimes) that it had a directory.
	<LI>
	  Fixed bug in Goto Char code where it would refuse to go to a character's
	  location (sometimes) if the character had not been created yet.
	<LI>
	  Improved drawing of palettes on indexed displays
	<LI>
	  Improved accent processing in build accented characters
      </UL>
    <LI>
      26 Jan 2001
      <UL>
	<LI>
	  Fixed a bug that kept the file chooser (the open file dlg, etc.) from browsing
	  the root directory.
	<LI>
	  Realized that libgif is just a symbolic link to libungif. Made the readgif
	  routine use either one
	<LI>
	  A typo in writepng caused it to require libpng at link time, this has been
	  fixed, it should now only need libpng if someone actually loads a png file.
      </UL>
    <LI>
      21 Jan 2001
      <UL>
	<LI>
	  Added a preference dlg. Not much in it as yet.
	<LI>
	  fixed a number of bugs
	  <UL>
	    <LI>
	      Timers sometimes failed to go off -&gt; splash screen might not vanish, popups
	      might not pop, autosave might not happen...
	    <LI>
	      Vertical lines might cause divide by 0 errors on some systems when reading
	      in a font
	    <LI>
	      Some fonts were thought not to have characters they actually had.
	    <LI>
	      94x94 fonts were encoded as 92x94 (losing 188 characters)
	    <LI>
	      Fixed problems with kuten decoding
	    <LI>
	      Fixed various crashes involving selecting and deselecting non-existent characters
	  </UL>
      </UL>
    <LI>
      9 Jan 2001
      <UL>
	<LI>
	  Added Tom Harvey's man page to the distribution (Thanks Tom!)
	<LI>
	  Fixed a bug where radio buttons, etc. sometimes got left highlit
	<LI>
	  Added an interpreter for (some) postscript type 3 fonts
	<LI>
	  made libgdraw and friends into one shared library
      </UL>
    <LI>
      6 Jan 2001
      <UL>
	<LI>
	  More distribution bug fixes
	<LI>
	  Fixed bugs in Overlap &amp; AutoWidth
	<LI>
	  Added new command to Metrics menu (Thirds in Width)
      </UL>
    <LI>
      4 Jan 2001
      <UL>
	<LI>
	  Fixed a distribution bug
	<LI>
	  Fixed some problems with build accented character
      </UL>
    <LI>
      2 Jan 2001
      <UL>
	<LI>
	  Many small improvements and bug fixes.
	<LI>
	  More remove overlap corrections
      </UL>
    <LI>
      21 Dec 2000
      <UL>
	<LI>
	  I think I'm reading xfig splines properly now. The conversion to postscript
	  still leaves something to be desired, but it's as good as I'm likely to make
	  it.
      </UL>
    <LI>
      20 Dec 2000
      <UL>
	<LI>
	  Generate Fonts can produce TrueType
      </UL>
    <LI>
      17 Dec 2000
      <UL>
	<LI>
	  TrueType reader now gets (horizontal) kerning info
	<LI>
	  Added code that automagically preserves changes if the program should crash
	  (but does not save on the source file unless you ask it to).
	<LI>
	  Added a Revert File command.
      </UL>
    <LI>
      16 Dec 2000
      <UL>
	<LI>
	  FontForge will now read in a TrueType font
	  <UL>
	    <LI>
	      (it doesn't read hints from the font)
	    <LI>
	      (it doesn't read bitmaps from the font)
	  </UL>
      </UL>
    <LI>
      14 Dec 2000
      <UL>
	<LI>
	  Got FontForge to build on a netbsd alpha box
	<LI>
	  Added Auto Width &amp; Auto Kern commands
	<LI>
	  If you do a translation which is of the entire outline character and is only
	  in the x-direction, then all the character's hints will be translated too,
	  and if the character is a letter then in any characters which depend on this
	  one, the other things in the character will also be translated.
      </UL>
    <LI>
      12 Dec 2000
      <UL>
	<LI>
	  Added a skew command to the bitmap view
	<LI>
	  Added Interpolate Fonts
      </UL>
    <LI>
      11 Dec 2000
      <UL>
	<LI>
	  fixed more remove overlap bugs (don't know of any left)
	<LI>
	  Added Merge Font command
      </UL>
    <LI>
      10 Dec 2000
      <UL>
	<LI>
	  fixed many small bugs with constrained movements
	<LI>
	  fixed many autohinting bugs
	<LI>
	  Fixed some remove overlap bugs
	<LI>
	  Added backup files when saving sfd files
      </UL>
    <LI>
      5 Dec 2000
      <UL>
	<LI>
	  Added a command that automagically builds an accented (or general composite)
	  character. (<A HREF="elementmenu.html#Accented">see below</A>)
	<LI>
	  Added support for various CJK encodings (JIS 208, JIS 212, old KSC 5601,
	  GB 2302, all 94x94)
	<LI>
	  Implemented a fairly poor importer/exporter of xfig files. (I don't know
	  how to convert XSplines to B&eacute;zier Splines reasonably).
	<LI>
	  Implemented a metrics window, added support for kerning (kern info only lives
	  in the afm file, not in the font itself)
	<LI>
	  Metrics window will also display text from bitmap fonts (but you mayn't change
	  a bitmap's metrics)
	<LI>
	  Reexamined palette code with transient windows. It seems to work on kde now.
	<LI>
	  Fixed blinking cursor on 8&amp;16 bit-depth displays
      </UL>
    <LI>
      1 Dec 2000
      <UL>
	<LI>
	  Generate &amp; save bitmaps
	<LI>
	  Bitmap editor (added a couple of tools like flipping and corner turning,
	  circle drawing, etc. that aren't in fontographer)
	<LI>
	  fontview can display a bitmap, if it does then double clicking on a char
	  will display the bitmap
	<LI>
	  Changing the width of a character (in outline view) will automatically change
	  the width of all bitmaps of that character. Also if the character is a letter
	  and there are accented characters which refer to it and the accented characters
	  have the same with that the letter used to have, then the accented characters
	  (and their bitmaps) will also have their width updated.
	<LI>
	  Can import and export bitmap images into bitmap window
	<LI>
	  Can import a bdf file
	<LI>
	  Can copy and paste in the fontview (bitmaps can be affected as well as outlines)
      </UL>
    <LI>
      28 Nov 2000
      <UL>
	<LI>
	  Improved star tool
	<LI>
	  Added various metrics menu items
	<LI>
	  Added a simplify command
	<LI>
	  fixed bugs in the merge command
	<LI>
	  Made font view functional, can apply to many outline characters at once
	  <UL>
	    <LI>
	      transform
	    <LI>
	      expand stroke
	    <LI>
	      remove overlap
	    <LI>
	      simplify
	    <LI>
	      metrics items above
	    <LI>
	      Char Info
	  </UL>
      </UL>
    <LI>
      19 Nov 2000
      <UL>
	<LI>
	  Added Calligraphic expand stroke
	<LI>
	  Added Get Info
	<LI>
	  Added Correct Path Direction
	<LI>
	  Added Remove Overlap (probably very buggy)
	<LI>
	  Enhanced support for Unicode, added type0 font output.
	<LI>
	  Added type3 output (not compressed type 3, can't open a type3 or type0)
	<LI>
	  Sped up background image drawing.
	<LI>
	  Implemented drag-resize of images and referenced characters
	<LI>
	  Added Rectangle, Ellipse, Polygon and Star tools.
      </UL>
    <LI>
      14 Nov 2000
      <UL>
	<LI>
	  Added expand stroke
	<LI>
	  Paths stored in .sfd files are now closed (bug fix)
      </UL>
    <LI>
      13 Nov 2000
      <UL>
	<LI>
	  Added the equivalent of a .fog file (Spline Font Database, sfd files)
	<LI>
	  Implemented transform tools
	<LI>
	  continued fixing palettes
      </UL>
    <LI>
      11 Nov 2000
      <UL>
	<LI>
	  Imports and exports simple eps files for characters
	<LI>
	  Transform allows you to pick origin
	<LI>
	  Bunch of menu items for manual hinting added. (I hope I'm done with hints
	  now... at least till I look at truetype)
	<LI>
	  Clockwise now agrees with Fontographer (and everyone else)
	<LI>
	  Added "pen" , and a knife tools
	<LI>
	  (Added many other tools pictures, but they aren't implemented yet)
	<LI>
	  Fixed many palette problems. (including kde's not doing menu shortcuts)
	<LI>
	  Put in menu items to show/hide palettes
      </UL>
    <LI>
      9 Nov 2000
      <UL>
	<LI>
	  It can now calculate hints, font wide stem hints and character specific hints.
	<LI>
	  Transform should do rotations right now.
	<LI>
	  Metamorphosis file format bug should be fixed
      </UL>
  </UL>
  <P>
  FontForge (as PfaEdit) was initially made available (on the web) on 7 Nov
  2000, and moved to sourceforge 21 Apr 2001. I started coding it in approximately
  Sept of 2000.
</DIV>
</BODY></HTML>
